информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Страшный баг в WindowsЗа кого нас держат?Все любят мед
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Три миллиона электронных замков... 
 Doom на газонокосилках 
 Умер Никлаус Вирт 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / programming
Имя Пароль
ФОРУМ
если вы видите этот текст, отключите в настройках форума использование JavaScript
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
[C++] Простой вопрос, а инфы дома... 14.04.03 15:15  Число просмотров: 975
Автор: Tamas Статус: Member
<"чистая" ссылка>
> а я на работе ...
> Простой пример перехвата сообщения на дельфе, plz

а прокакие сообшения собствено идет речь ???
<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-2024 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach