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

Вниз

Отловить события для стандартных кнопок окна   Найти похожие ветки 

 
Ricks ©   (2007-08-21 16:35) [0]

Как мне узнать, например, что пользователь навел на [x] или [_] мышь. Или что он на эту кнопку нажал (или отпустил).
Для тех кто любит спрашивать "нафига оно тебе надо" отвечаю сразу : надо просто рисовать эти кнопки по другому (а не взламывать что-то, от чего некоторые сразу начинают отговаривать)


 
tesseract ©   (2007-08-21 16:50) [1]


> надо просто рисовать эти кнопки по другому (а не взламывать
> что-то, от чего некоторые сразу начинают отговаривать)


Созда окно без стандартных кнопок и нарисуй их сама. Отлавливай сообщения от этих кнопок.


 
Ricks ©   (2007-08-21 16:55) [2]


> сама

это что-то новенькое :)

А вообще, ты думаешь так будет проще?

увидел (мужского рода) :) такой прикол в excel 2007)


 
DVM ©   (2007-08-21 16:57) [3]


> Ricks ©  

WM_NCMOUSEMOVE, WM_NCHITTEST, WM_NCLBUTTONDOWN, WM_NCLBUTTONUP

Только задача непростая, имей ввиду, лучше послушай [1]


 
Ricks ©   (2007-08-21 17:01) [4]


> DVM ©

Спасибо. Про эти сообщения я знал.


> Только задача непростая

задача в том, чтобы найти положения кнопок и в нужный момент перерисовывать (типа WM_NCPAINT) так получается?
Но тогда вопрос о сообщениях типа WM_MOUSENTER и WM_MOUSELEAVE остается открытым...

Действительно уж лучше будет свои кнопки приделать, если других путей нет.


 
DVM ©   (2007-08-21 17:03) [5]


> Про эти сообщения я знал.

Если бы знал, то не спрашивал бы.


> Но тогда вопрос о сообщениях типа WM_MOUSENTER и WM_MOUSELEAVE
> остается открытым...

Вопрос закрыт. Ибо есть NC_HITTEST и NC_MOUSEMOVE


 
DVM ©   (2007-08-21 17:04) [6]

Т.е. WM_HCHITTEST и WM_NCMOUSEMOVE


 
почти_уже_не_злой   (2007-08-21 17:08) [7]

Понял.
Только что проверил. Действительно работает – точно ловит HTCLOSE


 
Ricks ©   (2007-08-21 17:08) [8]

почти_уже_не_злой  

это я :)


 
DVM ©   (2007-08-21 17:12) [9]


unit Unit1;

interface

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

type
 TForm1 = class(TForm)
 private
   { Private declarations }
   procedure WMNCmousemove(var Message: TMessage); message WM_NCmousemove;
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

//------------------------------------------------------------------------------

procedure TForm1.WMNCmousemove(var Message: TMessage);
begin
 case Message.WParam of
   HTMAXBUTTON: form1.Caption := "ðàçâåðíóòü";
   HTCLOSE: form1.Caption := "çàêðûòü";
   HTMINBUTTON: form1.Caption := "ñâåðíóòü";
   HTCAPTION: form1.Caption := "íåò êíîïêè";
 end;
inherited;
end;

//------------------------------------------------------------------------------

end.


 
Ricks ©   (2007-08-21 17:43) [10]

Спасибо большое, буду пробовать.



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

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

Наверх





Память: 0.47 MB
Время: 0.044 c
11-1169575891
Trible
2007-01-23 21:11
2007.09.16
Примитивные объекты: вопрос.


2-1187875140
Fleg
2007-08-23 17:19
2007.09.16
проблема со свойствами объекта


2-1187608348
yaJohn
2007-08-20 15:12
2007.09.16
размер nchar поля в MSSQL


2-1187701008
Falameezar
2007-08-21 16:56
2007.09.16
Редактор реестра


3-1179292836
Цукор5
2007-05-16 09:20
2007.09.16
DBF потоках + "упаковка"





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский