PB 電子会議室
発言No. | 更新日 | 題名(クリックすると発言内容と関連するコメントが表示されます) |
---|---|---|
10779 | 00/03/22 18:49:48 | RE(5):PB6.5: ウインドウ内のアクティブコントロールの取得 By koukichi |
10751 | 00/03/21 13:26:34 | RE(4):PB6.5: ウインドウ内のアクティブコントロールの取得(ごみレス) By Taka |
10750 | 00/03/21 12:44:14 | RE(3):PB6.5: ウインドウ内のアクティブコントロールの取得(ごみレス) By M.M |
10749 | 00/03/21 11:05:44 | RE(2):PB6.5: ウインドウ内のアクティブコントロールの取得 By Taka |
10747 | 00/03/20 17:32:26 | RE(1):PB6.5: ウインドウ内のアクティブコントロールの取得 By M.M |
10746 | 00/03/20 11:55:39 | PB6.5: ウインドウ内のアクテブコントロールの取得 By koukichi |
カテゴリ:スクリプトの記述
日付:2000年03月21日 12:44 発信者:M.M
題名:RE(3):PB6.5: ウインドウ内のアクティブコントロールの取得(ごみレス)
Takaさん、こんにちは。
>たぶんこの方法しかないと思います。
>が、フラグ用変数ではなく、sle_n への参照を格納しておくと良いでしょう。
>
>インスタンス変数
>SingleLineEdit i_sle_x
>
>各コントロールのGetFocusイベント
>i_sle_x = this
>
>ボタンでの処理
>(ダイアログを開く)
>(戻り値などのチェック)
>if isValid(i_sle_x) then i_sle_x.Text = ダイアログから返された文字列など
Takaさん、ナイス!
なんで昨日はこのロジックを思い付かなかったんだろう。
やっぱり、休日出勤して頭が煮詰まっていたせいかな。
>【追記】
>各コントロールのGetFocusイベントを使いたくないのでしたら、以下の方法でやっても同じです。
>・ウィンドウにユーザーイベント pbm_command を定義する。
>・pbm_commandのスクリプト
> if GetFocus().TypeOf() = SinglelineEdit! and NotificationCode = 256 then
> i_sle_x = GetFocus()
> end if
> ※ NotificationCode = 256 は、EN_SETFOCUS(0x0100)を意味します。
こっちのロジックもすっきりしていていいですねー。
ところで\"pbm_command\"って何のイベントIDでしたっけ?
付加情報:
PowerBuilder Version (記載なし)
Client SoftWare
OS Windows98
DBMS (記載なし)
Browser (記載なし)
Server SoftWare
OS (記載なし)
DBMS Oracle 8.0
WebServer (記載なし)
Copyright © 2013 Power Future Co., Ltd.