tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板) [ツリー表示へ]   [Home]
一括表示(VB.NET VB2005)
タイトルAcceptButton押下をキャンセルしたい
記事No4675
投稿日: 2006/12/14(Thu) 19:55
投稿者わたしき
VB2005 XP

ダイアログで表示させるFormにAcceptButtonで設定したボタンがあります。
ボタン押下で各項目のチェックを行い、
NGだったらその部分をFocusしてFormを閉じるのを中止したいのですが
どのようにしたら良いのでしょうか。

色々試したのですがもしかしたらAcceptButtonに設定したボタンには
処理をコーディングしないのが普通の使い方なのかと疑問に思い始めました。

よろしくお願いします。

フラグ管理でForm_Closingでキャンセル(e.Cancel)は、
AcceptButton押下チェック(そんな長くない処理)結果をフラグに設定する前に走ってしまいます

[ツリー表示へ]
タイトルRe: AcceptButton押下をキャンセルしたい
記事No4678
投稿日: 2006/12/15(Fri) 09:12
投稿者魔界の仮面弁士
> NGだったらその部分をFocusしてFormを閉じるのを中止したいのですが
> どのようにしたら良いのでしょうか。

DialogResult を操作しましょう。

[ツリー表示へ]
タイトルRe^2: AcceptButton押下をキャンセルしたい
記事No4683
投稿日: 2006/12/15(Fri) 10:45
投稿者わたしき
> DialogResult を操作しましょう。

魔界の仮面弁士さま
回答いただきありがとうございます。

ヘルプとか見たりしたのですがいまいち理解できませんでした。
親Formへの戻り値、DialogResultを「中止(Abort)」としたいという意味ではないのですが
魔界の仮面弁士さまがおっしゃるのであれば、なんか方法があるんだろうと思ったりするのですが
勘違いされているようなことは有りませんよね。

[ツリー表示へ]
タイトルRe^3: AcceptButton押下をキャンセルしたい
記事No4685
投稿日: 2006/12/15(Fri) 12:15
投稿者るしぇ
> 親Formへの戻り値、DialogResultを「中止(Abort)」としたいという意味ではないのですが
使い方を間違ってます。
[Button.DialogResult プロパティ]
http://msdn.microsoft.com/library/ja/cpref/html/frlrfsystemwindowsformsbuttonclassdialogresulttopic.asp
> 解説
> このプロパティの値が DialogResult.None 以外の値に設定されていて、
> 親フォームが ShowDialog メソッドで表示されている場合は、ボタンを
> クリックして親フォームを閉じます。
裏を返せば DialogResult.None を設定すればフォームを閉じないということです。

[Form.DialogResult プロパティ]
http://msdn.microsoft.com/library/ja/cpref/html/frlrfSystemWindowsFormsFormClassDialogResultTopic.asp

[ツリー表示へ]
タイトルRe^4: AcceptButton押下をキャンセルしたい
記事No4686
投稿日: 2006/12/15(Fri) 13:24
投稿者わたしき
るしぇさま
回答ありがとうございます。
おかげさまで思った動作ができるようになりました。

> 使い方を間違ってます。
私の思い違いだったようで失礼なことを言ってしまいました。
魔界の仮面弁士さま申し訳ありませんでした。

> 裏を返せば DialogResult.None を設定すればフォームを閉じないということです。
なるほど。ヘルプの読み方が少し判りました。
そのものずばりを探そうとする癖を直そうと思います。

みなさんありがとうございました。

[ツリー表示へ]