2009-06-09 15 views
0

クライアント側のWindowsアプリケーションで、Firefox、Beyond Compare、VMware Workstation 6.5などの非モーダルのスライド通知バーを実装するにはどうすればよいですか?ノンモーダル通知バー?

現在のところ、言語やフレームワークは問題ありません。私の現在のアプリはDelphi/C++ Builderにありますが、フレームワークの比較やUIのプロトタイプ作成にも興味があります。

関連する質問:This questionはJavaでそうすることを尋ねます。

答えて

1

Beyond Compareの通知バーはスライドせず、開いているだけなので、私はそれについて何か助けをすることはできません。通知バー自体は、画像/テキスト用のTImageとTLabelを持つ単なるTPanelです。これはデザイン時にメインウィンドウに配置され、ボトムに合わせるように設定されています。通常は表示されません。表示するメッセージがある場合は、Visibleプロパティをtrueに設定します。

通知を非表示にする方法は、動作方法に応じて異なります。 BCでは、キーボードとマウスのフック(WH_KEYBOARDまたはWH_MOUSEのSetWindowsHookEx)をインストールし、キーアップおよびマウスボタンイベントで非表示にします。また、マークのように、遅れて隠すか、サイドボタンを閉じるか、アプリ内の特定のイベントを監視し、手動で非表示にすることができます。

0

Delphiでは、ダイアログのプロパティを変更することができます(ウィンドウの種類を「ダイアログ」から変更し、標準のウィンドウの代替を選択することができます)。申し訳ありませんが、具体的にはできません。デルファイアプリで最後に作業してから約2年が経過しています。

+0

非モーダルダイアログを作成するのは簡単です。代わりに、親ウィンドウの一部である通知バーを作成する簡単な方法に興味があります。 –

+0

申し訳ありません。あなたはステータスバーを一番下に置き、ステータスバーのテキストプロパティを変更できませんか?あるいは、高さが「開く」ように変更され、遅れてゼロに戻ったパネル? –

関連する問題