◆ [Delphi] TShellTreeViewやTShellListViewのシェルメニューを表示させない
こんばんワイン。どーもボキです。

AutoContextMenus := False; とするだけだったわ。


TShellTreeViewやTShellListViewを右クリックした際に表示されるシェルメニューをOFFにする方法。
TApplicationEventsのMessageで、右ボタンのダウン・アップを無視させればよい。

a0021757_18501935.gif
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, ShellCtrls, ExtCtrls,StdCtrls, AppEvnts;

type
TForm1 = class(TForm)
GroupBox1: TGroupBox;
ShellTreeView1: TShellTreeView;
Splitter1: TSplitter;
GroupBox2: TGroupBox;
ShellListView: TShellListView;
ApplicationEvents1: TApplicationEvents;
procedure ApplicationEvents1Message(var Msg: tagMSG; var Handled: Boolean);
private
{ Private 宣言 }
public
{ Public 宣言 }
end;

var
Form1: TForm1;

implementation


{$R *.dfm}

{ TForm1 }



procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG; var Handled: Boolean);
begin
//※シェルメニューをOFFとするため、左ダブルクリック、右クリックメニューを無効
case Msg.message of
WM_LBUTTONDBLCLK,WM_RBUTTONDOWN,WM_RBUTTONUP : Handled := True;
end;
end;

end.


[PR]
by yozda | 2015-05-02 18:50 | プログラミング | Trackback | Comments(0)
トラックバックURL : http://yozda.exblog.jp/tb/21184913
トラックバックする(会員専用) [ヘルプ]
<< ボタン押すだけから戻れない! [Delphi] TShell... >>