AS400 怎样实现F1=Help的功能(2)

发布于 2022-08-21 14:24:29 字数 12211 浏览 38 评论 9

下面给大家一小小的例子来看怎样使用PANAL GROUP.

1) 创建新的 PANEL GROUP 源程序 CRTSRCPF YOU_LIB/QPNLSRC
2)用SEU 打进去下面的源程序:source member: MY_DSPFHT,  类型: PNLGRP 内容:
NLGRP TXTMODE=SBCS.                                                      
:HELP NAME='MY_REC1' WIDTH=74.                                             
:H1.BAA101  This is the hading of my Screen Level Help                     
:H3.Over View                                                              
.                                                                        
This is the first paragraph of the help text for my screen. What ever you  
type here will be shown when F1=Help is entered, when cursor is not        
positioned to any fields with field-lever help defined.                    
.                                                                        
And this is the second paragraph of the help text.                        
.                                                                        
The third paragraph of the screen level help.                              
.                                                                        
:LINES.                                                                    
Help lines can be entered as follows:                                      
   help line 1                                                            
   help line 2                                                            
   help line 3                                                            
   help line 4                                                            
:ELINES.                                                                  
.                                                                        
:EHELP.                                                                    
:HELP NAME='MY_REC1/MY_FLD1'.                                             
:H3.This is the field level help. When cursor is positioned to the field
and F1=Help key is pressed, the message here will be shown on the screen.
:EHELP.                                                                  
:EPNLGRP.                                                               

用OPTION 14来编译这个源程序,生成 PANAL GROUP OBJECT MY_DSPFHT.

再打入样板DSPF源程序如下:SOURCE MEMBER:MY_DSPF, SOURCE TYPE: DSPF

   A                                      DSPSIZ(24 80 *DS3)                  
     A                                      ALTHELP(CA01)                        
     A                                      HLPTITLE(' ')                       
     A                                      HELP                                 
     A**************************************************************************
     A          R MY_REC1                                                        
     A          H                           HLPARA(*NONE)                        
     A                                      HLPPNLGRP('MY_REC1' -               
     A                                      MY_DSPFHT)                           
     A          H                           HLPARA(10 2 10 39)                  
     A                                      HLPPNLGRP('MY_REC1/MY_FLD1' -        
     A                                      MY_DSPFHT)                           
     A                                 10  2'THIS IS MY FIELD'                  
     A            MY_FLD1       10A  B 10 30                                    

编译成功后用 SDA OPTION 3. Test display files 测试,光标放在没有字段的地方,按F1=Help键,看屏幕上出现什么,
再吧光标方在可输入的字段上,按F1=Help键,再看屏幕上出现了什么。

大家想一想,是不是比不愿意看书学习,喜欢凭小聪明搞点“小发明”的某老鸟自创的“古董光标坐标法+弹出窗口屏幕程序法”容易得多呢?

请把     改成 :P

附上某老鸟的“古董光标坐标法+弹出窗口程序法”的连接

http://blog.chinaunix.net/u1/46034/showart.php?id=362360

[ 本帖最后由 franliu 于 2009-11-29 18:35 编辑 ]

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(9

猫九 2022-09-02 01:52:09

这个就不理解了。虽然报错,但是是10的错误,没有影响测试结果。可是我也没有在PNL里边加任何的中文,所以还是觉得怪怪的。

另外,SUBFILE能够用这个方法么?我刚刚在SUBFILE里边找不到PNLHLP

我最亲爱的 2022-09-02 01:49:29

我那个例子是纯英文的。你用CCSID=37就不会报错了。

月光色 2022-09-02 01:13:38

也是937

倾城°AllureLove 2022-09-02 00:15:36

哦。我是问你那个qpnlsrc文件的ccsid呢。

庆幸我还是我 2022-09-01 23:58:40

FILE的为937,没有源程序,是在TEST FILE里边测试的

固执像三岁 2022-09-01 23:28:34

你那源程序文件的ccsid和你的作业的ccsid分别是什么?

无远思近则忧 2022-09-01 19:59:26

Message . . . . : A CCSID conversion error occured when message CPX5A0C was
*MSGID: CPD5BCB  SEVERITY: 10  SEQNBR:      0  TAG NBR:      0         
这是编译PNL时发生的,但是不影响程序,我想问下,这个会引起什么影响么?

屌丝范 2022-08-30 20:05:29

*MSGID: CPD5A8E  SEVERITY: 30  SEQNBR:      0  TAG NBR:      0  
  Message . . . . : Text found before first tag in panel group.

在标签后面前面在输入文本了。

*MSGID: CPD5A8C  SEVERITY: 30  SEQNBR:    100  TAG NBR:      2  
  Message . . . . : Text found after PNLGRP tag.

在标签后面不可以在输入文本了。

这个panal group源程序有点像xml, 每段文本就是被头和尾quote起来的。

你copy-paste我的源代码不就行了?

感情废物 2022-08-29 12:58:44

我照着你的内容输入一遍,编译PNLGRP时报错。为什么啊。

*MSGID: CPD5A8E  SEVERITY: 30  SEQNBR:      0  TAG NBR:      0  
  Message . . . . : Text found before first tag in panel group.
*MSGID: CPD5A8C  SEVERITY: 30  SEQNBR:    100  TAG NBR:      2  
  Message . . . . : Text found after PNLGRP tag.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文