---- Support BBS ----
[ 前の記事 | 次の記事 | 一覧 ]

[00576] 1189 byte
投稿日時: 2002年2月3日(日) 20時20分33秒
ホスト名: PPPa141.osaka-ip.dti.ne.jp(210.170.135.141)

Re: キャンセルを押し時の処理

投稿者: 杉浦 まさき
e-mail: (入力されていません)
   URL: (入力されていません)

SHIN さん、こんばんは。
杉浦 まさき です。

> 田楽サーバーにあるヘルプで
> notify(ex) --
> ※[OK] ボタンが押された時は1、[キャンセル] ボタンが押された時は0を返す
> とあるのですが、
> ddepoke "newcontrol", "okcancel";
> でキャンセルボタンを押した時の処理はどのようにするのでしょうか?

okcancel に限らず、notify(ex) で設定した通知コードは
ダイアログ表示後に作成するアドバイスループ内で
ddewaitadvice を使って取得します。
#同梱のヘルプの「ダイアログの作成例」やサンプルマクロも
 参照してください。

// [OK] [キャンセル] ボタンのみのダイアログ
ddepoke "newdialog", "40, OK/キャンセルボタンのテスト";
ddepoke "newcontrol", "okcancel";

$ntfy = ""; // 通知コードを受け取る変数
ddestartadvice "dlgresult", $ntfy; // アドバイスループの作成
ddeexecute "dialog lastactiveparent"; // ダイアログの表示
while ($ntfy == "") { // 通知コードを受け取るまで無限ループ
    ddewaitadvice $ntfy, 10; // ボタンが押されると $ntfy に通知コードが入る
}
ddeexecute "enddialog"; // ダイアログの終了
ddestopadvice "dlgresult"; // アドバイスループの終了

// 通知コードにより押されたボタンを判定if ($ntfy == "1") {
  // [OK] ボタンが押された場合
} else if ($ntfy == "0") {
  // [キャンセル] ボタンが押された場合
}



[ 前の記事 | 次の記事 | 一覧 ]


<575> キャンセルを押し時の処理 (SHIN) 02/03 17:26
>576< Re: キャンセルを押し時の処理 (杉浦 まさき) 02/03 20:20
 └<577> Re: キャンセルを押し時の処理 (SHIN) 02/04 13:03
  └<578> Re: キャンセルを押し時の処理 (杉浦 まさき) 02/04 22:35
   └<579> Re: キャンセルを押し時の処理 (SHIN) 02/05 09:11

---- Support BBS ----