Вниз
Скачать: CL | DM;

Перехват сообщения DoubleClick   Найти похожие ветки 

← →
Student ©   (2009-08-29 22:50) [0]

Столкнулся с задачей: "Навигация по каталогам и файлам". Выбрал компонент ShellListView. Сделал составной класс, вот код:

unit Unit2;

interface
uses
// system units
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Dialogs,
ExtCtrls, StdCtrls, IniFiles, Buttons,
// additional units
ShellCtrls;

type
TArchiveReports = class(TObject)
private
  pnlMain : TPanel;
  lvListView : TShellListView;
  procedure MesDblClick (var MyMessage : TWMMouse); message wm_LButtonDblClk;
public
  constructor Create;
end;

var
ArchiveReports : TArchiveReports;
implementation

uses
unit1;

constructor TArchiveReports.Create;
begin
inherited Create;
pnlMain := TPanel.Create(Form1);
with pnlMain do
begin
  Align := alTop;
  Height := 250;
  BevelWidth := 1;
  Font.Name := "Courier New";
  Font.Size := 12;
  Font.Style := [fsBold];
  Parent := Form1;
  Show;
end;
lvListView := TShellListView.Create(pnlMain);
with lvListView do
begin
  Width := pnlMain.Width div 2;
  Height := pnlMain.Height;
  Sorted := True;
  ReadOnly := False;
  HideSelection := False;
  TabOrder := 1;
  Parent := pnlMain;
  Color := clGray;
end;
end;

procedure TArchiveReports.MesDblClick (var MyMessage : TWMMouse);
begin
ShowMessage ("Хэллоу ворлд");
end;
end.

Я, конечно, писал
  lvListView.OnDblClick := MesDblClick;, но меня не устраивает данный обработчик, т.к. он после DblClick вызывает какае то другое сообщение, которое открывает файл. Т.е. мне как бы "перекрыть" надо это сообщение(которое DblClick). Спасибо


← →
Германн ©   (2009-08-30 01:13) [1]

Спам :(


← →
Сергей М. ©   (2009-08-31 08:41) [2]


> Student


С какой радости система будет поылать твоему классу сообщение wm_LButtonDblClk ? Окна-то у него нет ..


← →
AntiZOG   (2009-09-05 09:35) [3]

Как вариант локальный хук.

Пишется намного проще глобального, так как не нужно межпроцессной коммуникации
Вот пример для установки глобального. Для локального можно большую часть кода выкинуть.
http://www.delphimaster.ru/articles/hooks/index.html



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.005 c
2-1311708454
Lamer6666
2011-07-26 23:27
2011.11.20
Правильно ли работаю с потоками?


9-1189869399
ElectriC
2007-09-15 19:16
2011.11.20
Collusion Detection на ID3DXSprite


15-1311261832
Студент
2011-07-21 19:23
2011.11.20
Что учить?


6-1245392255
SortoVaritu
2009-06-19 10:17
2011.11.20
Вопрос по FtpGetFile


4-1251990104
TIF
2009-09-03 19:01
2011.11.20
Windows XP: вызвать диалог "Установка программы от другого имени"




   Наверх