PowerBuilder编程实用技巧汇集

 我来答
机器1718
2022-11-02 · TA获得超过6826个赞
知道小有建树答主
回答量:2805
采纳率:99%
帮助的人:159万
展开全部
    一 用Enter键实现物件的焦点切换

    在PowerBuilder中已定义许多事件所对应的MessageID 而在其所提供的元件 大部分有对应的keydown事件 其ID值不一定相同 例如在datawindow->pbm_dwnkey singlelineedit->pbm_keydown 其他参考使用手册 因此先对使用的元件新增key 的使用者事件 当user在元件上按任何按键时 将会触发此keydown事件

    你将获得所传的参数key(按键代码) keyflags(复合键代码) 当所按的是Enter时 你就把焦点切换到下一元件或下一栏位      选择要处理的datawindowcontrol 然后选择menu的declare的userevents 此时会显示一个使用者事件box      于eventname设定使用者事件名称例如:ue_checkkey 然后在eventID填入pbm_dwnkey(或从Pasteevent选择) 然后按OK      你可在datawindowcontrols的script中selectevent里发现多了一个使用者事件 ue_checkkey 并且此事件会传递 个参数keycodekey unsignedlongkeyflags      在script中可以如下填写     choose case key     case KeyTab!//响应按Tab键     //writeyourcode     case KeyEnter!//响应按Enter键     //writeyourcode     case KeyEscape!//响应按Esc键     //writeyourcode     end choose    注意     ( )keycode是Enumeratedatatype 可在onlinehelp或browers中获得其属性     ( )你可以设定returnvalue: 或     如果是在DataWindow上 可参考以下的方式     在DataWindow宣告一userevent      ( )如ue_enter 将EventID参考至pbm_dwnprocessenter     ( )在ue_enter加入以下的程式码     send(handle(this) long( ))     return      二 在MDI视窗内加入其他Controls 并使其在sheets视窗中正确显示     把MDIWindow的ClientArea打开(Resize) ClientArea可视为一种Control PB将它的名字内定为MDI_     //Example//m m r r areallinteger     //movetheclientareatobeginat(m m ) mdi_ Move(WorkspaceX()+m WorkspaceY()+m )     //Resizetheclientareabasedonthevalue(r r )yougived mdi_ Resize(r r )     需要注意的是ClientArea打开后 区域内的Control会被盖掉      三 PowerBuilder与CommPort的连接      .使用可以控制CommPort的OCX 例如MicrosoftCommunicationsControl或pdqComm      .InitiatetheOCX     //Script如下 ole_ 为OCXName     ole_ object CommPort=     ole_ object Settings= N     ole_ object PortOpen=true     ole_ object InputLen=      GetData or PutData     //GetData     ole_ object input()     //PutData     ole_ object output= ATDT +char( )

    四 在 grid中实现列标题覆盖多列

lishixinzhi/Article/program/PB/201311/24571

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式