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

Вниз

Как двигать окно программы нажав на ней мышью?   Найти похожие ветки 

 
Hromosom   (2005-05-26 19:56) [0]

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

Спасибо вам люди добрые за ваши ответы.


 
kami ©   (2005-05-26 20:01) [1]

А в FAQ посмотреть - не судьба, конечно :)
uses
 SysUtils, WinTypes, WinProcs,  Messages,
 Classes, Graphics, Controls, Forms, Dialogs, StdCrtls;
type
 TForm1 = class(TForm)
    private    
   procedure WMNCHitTest(var M: TWMNCHitTest);
                message wm_NCCHitTest;
 end;
------------------------------------
procedure TForm1. WMNCHitTest(var M: TWMNCHitTest);  

begin
 inherited;
 if M.Result = htClient then
   M.Result := htCaption;
end;

end.


 
kami ©   (2005-05-26 20:02) [2]

Забыл добавить - взято с Delphi Russian Knowledge Base


 
Hromosom ©   (2005-05-26 20:05) [3]

А что какой фкг где?
А у мена нету модуля StdCrtls и желания инсталить всякую бякй тоже нет.
Как сделать просто через дельфи?


 
Nes ©   (2005-05-26 20:17) [4]

Дык, ркшил зайти сюды и вот на:
Переписываю kami:
В секцию Private Declarations дописываем объявление процедуры:
procedure WMNChitTest(var M:TWMNCHitTest); message WM_NCHitTest;
и саму процедуру
procedure Tform1.WMNCHitTest(var M:TWMNCHitTest);
begin
inherited;
if M.Result=htClient then M.Result:=htCaption;
end;


 
kami ©   (2005-05-26 20:21) [5]

ну, да, не посмотрел на код - сделал ctrl-c ctrl-v
Нужно всего лишь добавить в uses нужной формы модуль StdCtrls
и заменить wm_NCCHitTest на wm_NCHitTest

Только что проверил - все работает (правда, D5). И не надо ничего добавлять.


 
kami ©   (2005-05-26 20:23) [6]

<offtop>
[4] Nes ©
Опередил :)
</offtop>


 
Hromosom ©   (2005-05-26 20:36) [7]

Rabotat rabotaet tolko ja ne ponal kak...

Slihal pro sposob vibrat iz menu s pomos4ju SendMessage() kak eto sdelat ne ponal, mozet objasnite?


 
Yanis ©   (2005-05-26 21:06) [8]


> Slihal pro sposob vibrat iz menu s pomos4ju SendMessage() kak eto
> sdelat ne ponal, mozet objasnite?

Тебе привели вполне хороший код. Зачем тебе ещё мучения?


 
alex-drob   (2005-05-26 21:19) [9]

releasecapture;
perform(wm_syscommand,$f012,0)


 
Hromosom ©   (2005-05-26 21:30) [10]

Potomu kak ja ego ne ponal a pontu mne ot etogo koda togda ja nau4itsja ho4u vot v 4em prikol a vtoroi sposob bil bi mne poleznee jab 4go mozet es4e gde zajuzat smog.

Smisl v tom 4tob poslat komandu kak budto ti nazal na move iz menu progi.


 
Nes ©   (2005-05-26 22:16) [11]

значт...открываем учебник по Delphi...и читаем "Что такое сообщения,Типы сообщений,Система сообщение Delphi ,Обработка сообщений" и  ещё кучу тем,тогда всё поймешь...кстати...второй способ ,по-моему,ничем не легче...


 
Nes ©   (2005-05-26 22:18) [12]

А дык, забыл...+"API:SendMessage и PostMessage"


 
Hromosom ©   (2005-05-27 10:45) [13]

Удалено модератором
Примечание: Может лучше ты пойдешь туда?


 
Slider007 ©   (2005-05-27 10:49) [14]

Hromosom ©   (27.05.05 10:45) [13]
Во как ..


 
Virgo_Style ©   (2005-05-27 11:24) [15]

>>Я учусь только по справке в Delphi

А что ты тогда здесь делаешь?



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

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

Наверх





Память: 0.47 MB
Время: 0.045 c
1-1117468406
PIF
2005-05-30 19:53
2005.06.14
Компиляция res файла


1-1116942271
Rule
2005-05-24 17:44
2005.06.14
коллекция или массив в OLE Automation Object, как сделать ?


1-1117524388
sofs
2005-05-31 11:26
2005.06.14
Мемо


1-1117120799
CRACKISH
2005-05-26 19:19
2005.06.14
БЛокирование программы!


1-1117032694
Andarko
2005-05-25 18:51
2005.06.14
функция, которая возвращает матрицу





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