информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Spanning Tree Protocol: недокументированное применениеСетевые кракеры и правда о деле ЛевинаСтрашный баг в Windows
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Очередное исследование 19 миллиардов... 
 Оптимизация ввода-вывода как инструмент... 
 Зловреды выбирают Lisp и Delphi 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / programming
Имя Пароль
если вы видите этот текст, отключите в настройках форума использование JavaScript
ФОРУМ
все доски
FAQ
IRC
новые сообщения
site updates
guestbook
beginners
sysadmin
programming
operating systems
theory
web building
software
hardware
networking
law
hacking
gadgets
job
dnet
humor
miscellaneous
scrap
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
Что даже help не работает? 14.04.03 16:39  Число просмотров: 1061
Автор: Cyril <sc> Статус: Member
<"чистая" ссылка>
> а я на работе ...
> Простой пример перехвата сообщения на дельфе, plz

type
TTextBox = class(TCustomControl)
private
procedure WMChar(var Message: TWMChar); message WM_CHAR;
...
end;

implementation
....

procedure TTextBox.WMChar(var Message: TWMChar);
begin
if Chr(Message.CharCode) = #13 then
ProcessEnter
else
inherited;
end;
<programming>
Простой вопрос, а инфы дома... 14.04.03 13:38  
Автор: ASJinx Статус: Незарегистрированный пользователь
<"чистая" ссылка>
а я на работе ...
Простой пример перехвата сообщения на дельфе, plz
Что даже help не работает? 14.04.03 16:39  
Автор: Cyril <sc> Статус: Member
<"чистая" ссылка>
> а я на работе ...
> Простой пример перехвата сообщения на дельфе, plz

type
TTextBox = class(TCustomControl)
private
procedure WMChar(var Message: TWMChar); message WM_CHAR;
...
end;

implementation
....

procedure TTextBox.WMChar(var Message: TWMChar);
begin
if Chr(Message.CharCode) = #13 then
ProcessEnter
else
inherited;
end;
Похоже у меня лыжи не едут :(((( 15.04.03 11:23  
Автор: ASJinx Статус: Незарегистрированный пользователь
<"чистая" ссылка>
Допусти у меня следующее

...
type
TFignia = class(TShellListView)
protected
procedure DBC(var msg: TWMMouse); message wm_LButtonDblClk;
end;
....
implementation

procedure TFignia.DBC(var msg: TWMMouse);
begin
showmessage('aaaa');
end;

Я так понимаю, что когда я дважды щелкаю по VCL - TShellListView, то должно выскочить 'aaaa'. Но того нет. Меняем TShellListView на ТCustom... эффект тотже.

Если тоже самое сделать в родном классе формы, т.е.
type
TForm1 = class(TForm)
... // всякие компоненты и т.д.
protected
procedure DBC(var msg: TWMMouse); message wm_LButtonDblClk;
end;

...

procedure TForm.DBC(var msg: TWMMouse);
begin
showmessage('aaaa');
end;
...
То все работает, но только если щелкаем по форме.
Мне надо для TShellListView, или вообще для всего, куда нибудь щелкаем и перехват.
На возможный вопрос почему я не юзаю события отвечаю, что например мне надо проверить popup, системный он или нет, а без перехвата никак ...
Так и должно быть, весна на дворе ;-) 15.04.03 18:45  
Автор: Cyril <sc> Статус: Member
<"чистая" ссылка>
> ...skipped...
> без перехвата никак ...
странно, написал маленький примерчик, все работает
хотелось бы узнать поподробней как создавал объект класса
TShellListView у меня нет( delphi5) поэтому точно проверить не могу
type
  TForm1 = class(TForm)
    procedure FormCreate(Sender: TObject);
  end;

  TMyListBox = class(TCustomListBox)
    procedure DBC(var msg: TWMMouse); message WM_LBUTTONDBLCLK;
  end;
var
  Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.FormCreate(Sender: TObject);
var
  ListBox : TMyListBox;
begin
  ListBox := TMyListBox.Create(self);
  Listbox.Parent := self;
end;

{ MyListBox }

procedure TMyListBox.DBC(var msg: TWMMouse);
begin
  ShowMessage('AAA');
end;


---
Так и должно быть, весна на дворе ;-) 16.04.03 10:46  
Автор: ASJinx Статус: Незарегистрированный пользователь
<"чистая" ссылка>
Знаешь, таже самая фигня, но не работает.
По крайней мере с компанентом TShellListView я разобрался. Пришлось править сам компанент, хоть он и борлондовский но так глючно написан. У меня messagи в нем не перехватывались, т.к. они в нем перехватывались раньше, так что я в нем все сделал, что мне надо и перекомпилил (слава богу там демосы есть). Хотя таже самая фигня с ListBox-ом не работает. Может быть Дельфа глючная? У меня 6-я. А TShellListView гдето на панели компанентов в конце валяется, я его там случайно заметил (это чтото вроде рабочего стола, но глюкавое). Есть ли он в 5-ом я не знаю.
[C++] Простой вопрос, а инфы дома... 14.04.03 15:15  
Автор: Tamas Статус: Member
<"чистая" ссылка>
> а я на работе ...
> Простой пример перехвата сообщения на дельфе, plz

а прокакие сообшения собствено идет речь ???
Об обычных виндовозовскиз 14.04.03 16:16  
Автор: ASJinx Статус: Незарегистрированный пользователь
<"чистая" ссылка>
WM сообщения перед вызовом API
1




Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2025 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach