PB 電子会議室
発言No. | 更新日 | 題名(クリックすると発言内容と関連するコメントが表示されます) |
---|---|---|
19840 | 03/07/01 10:33:44 | RE(6):PB6.5: フォーカスの動き By volante |
19826 | 03/06/27 16:54:34 | RE(5):RE(5):PB6.5: フォーカスの動き By volante |
19824 | 03/06/27 16:15:39 | RE(4):PB6.5: フォーカスの動き(フォーカス制御) By まぁく |
19823 | 03/06/27 16:05:11 | RE(3):PB6.5: フォーカスの動き By まぁく |
19813 | 03/06/26 11:50:29 | RE(2):PB6.5: フォーカスの動き By volante |
19809 | 03/06/25 15:56:10 | RE(1):PB6.5: フォーカスの動き By まぁく |
19807 | 03/06/25 14:21:27 | PB6.5: フォーカスの動き By volante |
カテゴリ:スクリプトの記述
日付:2003年06月27日 16:15 発信者:まぁく
題名:RE(4):PB6.5: フォーカスの動き(フォーカス制御)
スクリプトです(未確認ですが…)
【先祖Windowに、以下の処理を記述】
<Windiow.Instance Valiable>
Boolean ib_autofocus
integer ii_cntl
EditMask iem_cntl[]
<Window.event open()>
//Ue_AutoFocusの使用
ib_autofocus = true
if ib_autofocus then
this.event ue_control_set()
end if
<Window.event ue_control_set():EditMaskコントロール一覧の作成>
PowerObject lpo_cntl //コントロール格納用
integer li_ub //Windowの全コントロール数
integer li_cnt_e //Editmaskの 〃
integer li_cnt //カウンタ
//**control取得
li_cnt_e = 0
ii_cntl = UpperBound(this.control)
for li_cnt = 1 to ii_cntl
lpo_cntl = this.control[li_cnt]
if TypeOf(lpo_cntl) = EditMask! then
li_cnt_e ++
iem_cntl[li_cnt_e] = lpo_cntl
end if
next
<Window.autofocus( powerobject apo ) returns boolean:フォーカスの移動>
integer li_cnt //カウンタ
integer li_em //EditMaskコントロール数
//**使用チェック & コントロール件数チェック
if not(ib_autofocus) then return false
li_em = UpperBound(iem_ctrl)
if li_em <= 0 then return false
//**フォーカスを移動するコントロールの決定
for li_cnt = 1 to li_em
if apo = iem_cntl[li_cnt] then
if li_cnt = li_em then
iem_cntl[1].setfocus()
return true
else
iem_cntl[li_cnt + 1].setfocus()
return true
end if
end if
next
//**予期せぬエラー
return false
【u_anc_em(EditMaskの先祖クラス)を作成し、以下のスクリプトを先祖に記述】
<u_anc_em.event ue_keydown()※イベント[pbm_keydown]を貼り付ける事>
if keydown(KeyEnter!) then
parent.dynamic event ue_autofocus(this)
end if
※:EditMaskは、このu_anc_emをウィンドウに貼り付けて下さい。
付加情報:
PowerBuilder Version (記載なし)
Client SoftWare
OS Windows 2000
DBMS Sybase SQL Anywhere Client
Browser (記載なし)
Server SoftWare
OS (記載なし)
DBMS (記載なし)
WebServer (記載なし)
Copyright © 2013 Power Future Co., Ltd.