ダイアログで右クリックの制御?

解決


ケス  2003-04-30 14:16:32  No: 107003  IP: [192.*.*.*]

ずーと、悩んでいます。助けて下さい。
CommonDialgを使ってユーザーにファイルを選択してもらい、
そのファイルを開くところまでは、出来ています。
しかし、そのファイル選択時に右クリックで、ポップアップメニュー
が表示され削除やら名前の変更がされてしまいます。
ファーム上やコンポーネント上では、Mouseイベントなどで制御できるの
ですが、どうしたらよいでしょうか?
また、選択時の方法としてDirListBoxやFileListBoxも考えましたが、
ユーザーにとって分かりぬくいと思い、ダイアログを使用しています。
ダイアログのヘルプを見ても、そんな制御する引き数はありませんでした。
どうか、お分かりになる方、教えて下さい。

編集 削除
とおりすがり  2003-04-30 15:47:19  No: 107004  IP: [192.*.*.*]

APIを使えば可能かもしれませんが、VBの基本操作ではできません。

それにしても、ユーザーに問題があります。CommonDialg上で削除や名前変更を行うと云う事は誤動作が発生する事を承知の上で操作しているとしか思えません。
したがって、簡単に済ませたいのであれば、ファイルのアクセス権を設けるなどして操作できないようにした方がいいかもしれませんね。

別の方法を使って解決すると云う発想も必要かと思われます。

編集 削除
DotL  2003-05-01 00:18:15  No: 107005  IP: [192.*.*.*]

先にCreateFile関数で目的のファイルを開いておき、コモンダイアログから制御が戻ったらそのファイルを閉じればいくかもしれません。

ただし、選択されるファイルがすでに分かっていることが前提ですが...。

編集 削除
ケス  2003-05-01 16:41:30  No: 107006  IP: [192.*.*.*]

みなさん、ありがとうございます。
何度も、すぐお返事を書こうと思ったのですが、APIやら、
アクセスやらを調べていたら、遅くなりました。すみません。
どうやら、ダイアログを使う時点でアウトのような気がしてきました。
ダイアログを開いて右クリックを制御しても、またクリックで改名
されてしまいますし、ファイル選択後にDELキーで削除もされてしまいます。
例え、APIで制御しても、一時的かも知れませんが、強制終了時に
おかしくなるのは、避けたいためダイアログの使用は避けることにします。よって、DirListBoxとFileListBoxを使うことにします。
「これができたら、いいのに」と思うことばかりですが、なんとか
やっていきます。ありがとうございました。

編集 削除
ケス  2003-05-02 11:19:37  No: 107007  IP: [192.*.*.*]

忘れてました。解決です。

編集 削除