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

Вниз

WM_NCHITTEST   Найти похожие ветки 

 
rhf   (2002-08-06 18:59) [0]

Если сделать перетаскивание формы за клиентскую область (HTCLIENT менять на HTCAPTION), то она перестает реагировать на стандартные события мыши (onClick и т.п.), что вполне логично....
т.е. теперь попап-меню само не появляеться, а надо :)

можно обрабатывать WM_NCRBUTTONUP и показывать меню...
вот только как узнать, что событие произошло в клиентской области, а не на кнопке минимизации например?
координаты проверять? или есть другое решение?


 
Skier   (2002-08-06 19:05) [1]

>rhf
Ежели ты за клиентскую часть окно таскаешь, может
тебе и Caption не нужен ? Или он обязателен ??


 
rhf   (2002-08-06 20:05) [2]

а какая разница видно его или нет, проблема-то все равно останеться...........


 
Gonza   (2002-08-06 20:51) [3]


procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
const
SC_DragMove = $F012; { a magic number }
begin
ReleaseCapture;
perform(WM_SysCommand, SC_DragMove, 0);
end;

Из FAQ.

Будет и таскаться и события обрабатывать


 
DAO   (2002-08-06 22:10) [4]

Вот тоже кусок кода который обычно я использую! Можешь у каждого контрола на событии MouseDown написать будет ли он таскать форму или нет!

if ssLeft in Shift then
begin
ReleaseCapture;
SendMessage(Handle, WM_NCLBUTTONDOWN, HTCAPTION, 0);
end;


удачи...


 
rhf   (2002-08-06 23:31) [5]

2 Gonza, весьма интересный magic number, с ним намного красивее чем просто с SC_MOVE... :)

всем спасибо.


 
Ученик   (2002-08-07 09:04) [6]

>DAO (06.08.02 22:10)
Прикольное развитие HTLEFT, HTRIGHT, HTBOTTOM, HTTOP, .... :)



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

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

Наверх





Память: 0.45 MB
Время: 0.006 c
3-60521
Well
2002-07-30 11:55
2002.08.19
Как получить значение поля MEMO


6-60782
kronprince
2002-06-07 16:49
2002.08.19
Имя машины и IP-адрес ???


8-60761
Vasserman
2002-04-08 16:50
2002.08.19
Новая графическая компонента


7-60877
Sergey Geraschenko
2002-06-05 20:14
2002.08.19
программа работающая только под win98/me


1-60594
Cr@sh
2002-08-08 10:05
2002.08.19
Возможно ли использование QuickReport без баз данных?





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