Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2002.09.19;
Скачать: [xml.tar.bz2];

Вниз

Мастаки! Как отключить заблокировать мышь над компонентом?   Найти похожие ветки 

 
novill   (2002-07-26 15:16) [0]

Собственно говоря SUBJ


 
Eugene Lachinov   (2002-07-26 15:32) [1]

А что значит заблокировать ?


 
novill   (2002-07-26 15:34) [2]

Чтобы компоент не реагировал на действия мыши: нажатие клавиш и движение.


 
Eugene Lachinov   (2002-07-26 15:38) [3]

Enabled := False


 
novill   (2002-07-26 15:43) [4]

:)
Логично, но должна оставаться возможность работы с клавиатуры.
Я бы с удовольствием "Enabled := False" у мыши но такого свойсва нет.


 
Eugene Lachinov   (2002-07-26 16:04) [5]

type
TMyButton = class(TButton)
protected
procedure WMNCHitTest(var Message: TWMNCHitTest); message WM_NCHITTEST;
end;

procedure TMyButton.WMNCHitTest(var Message: TCMHitTest);
begin
Message.Result := 0
end;


 
novill   (2002-07-26 16:58) [6]

Попробовал. Скнопкой не получилось. Поставил на форму. На самой форме отрабатывает, на компонентах - нет.

Прошу прощения за ламерство, но как это применить к моей ситуации. На форме грид и мемо,несколько кнопок и эдитов.
Надо чтобы только над гридом и мемо нажатия мышкой и перетаскивания не работали.


 
Eugene Lachinov   (2002-07-26 21:49) [7]

Еще вариант

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, DBGrids, StdCtrls;

type
TForm1 = class(TForm)
Memo1: TMemo;
Button1: TButton;
StringGrid1: TStringGrid;
private
{ Private declarations }
public
{ Public declarations }
procedure WMMouseActivate(var Message : TWMMouseActivate); message WM_MouseActivate;
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.WMMouseActivate(var Message : TWMMouseActivate);
var
Window : HWnd;
begin
Window := WindowFromPoint(Mouse.CursorPos);
if (Window = Memo1.Handle) or (Window = StringGrid1.Handle) then begin
Message.Result := MA_ACTIVATEANDEAT;
Windows.SetFocus(Window)
end else
inherited;
end;

end.


 
novill   (2002-07-29 09:01) [8]

Огромное спасибо! Очень выручил.



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

Форум: "WinAPI";
Текущий архив: 2002.09.19;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.029 c
3-60971
Igor_
2002-08-26 12:54
2002.09.19
IBExpress и транзакции.


3-60995
nikolo
2002-08-28 17:59
2002.09.19
Курсоры в триггерах


3-61016
Eugie
2002-08-30 09:35
2002.09.19
substring в InterBase


4-61365
Kasalex
2002-07-29 11:20
2002.09.19
Эмуляция нажатия клавиш в DOS-приложениях


3-60945
Mars
2002-08-28 11:22
2002.09.19
Как отследить изменение текущей записи в БД?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский