Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.05.16;
Скачать: CL | DM;

Вниз

Изменение размеров и перетаскивание объектов на форме   Найти похожие ветки 

 
Deb ©   (2004-03-27 16:10) [0]

Привет всем! Не подскажите как можно (на API) во время выполнения программы измененять размеры объектов (button, edit и т.п.) и перетаскивать их на форме как это делается в дизайтайме в Делфи? Заранее спасибо.


 
rimd ©   (2004-03-28 10:08) [1]

Перехватывай события MouseUp and MouseDown, отлавливай MouseMove и меняй координаты.


 
Cobalt ©   (2004-03-28 12:04) [2]

Выставь стиль csDesign (где-то там есть это, можно подсмотреть точные имена свойств и типы в Controls.pas)


 
GrayFace ©   (2004-03-28 12:16) [3]

Вот:

procedure TForm1.Panel1MouseDown(Sender: TObject; Button: TMouseButton;
 Shift: TShiftState; X, Y: Integer);
begin
 releasecapture;
 if (x<=5) and (y<=5) then (Sender as TWinControl).Perform(wm_syscommand,$f004,1) else
 if (x>=(Sender as TWinControl).Width-6) and (y<=5) then (Sender as TWinControl).Perform(wm_syscommand,$f005,1) else
 if (x<=5) and (y>=(Sender as TWinControl).Height-6) then (Sender as TWinControl).Perform(wm_syscommand,$f007,1) else
 if (x>=(Sender as TWinControl).Width-6) and (y>=(Sender as TWinControl).Height-6) then (Sender as TWinControl).Perform(wm_syscommand,$f008,1) else
 (Sender as TWinControl).Perform(wm_syscommand,$f012,1);
end;


 
GrayFace ©   (2004-03-28 12:20) [4]

Такой способ не пашет на Lebel и SpeedButton. Можно рисовать углы, заместив оконные процедуры кнопок и т.д.(SetWindowLong)


 
Diamond Cat ©   (2004-03-28 14:25) [5]


>
> GrayFace ©   (28.03.04 12:20) [4]
> Такой способ не пашет на Lebel
и не будет пахать, считай что label это просто рисунок на канве формы



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

Текущий архив: 2004.05.16;
Скачать: CL | DM;

Наверх




Память: 0.45 MB
Время: 0.035 c
1-1083528929
magician
2004-05-03 00:15
2004.05.16
BitBlt


4-1080053136
baromir
2004-03-23 17:45
2004.05.16
Не могу проследить за процессом....как быть?


3-1082388213
volser
2004-04-19 19:23
2004.05.16
Как програмно узнать, установлен ли InterBase


3-1082102461
Evgenija
2004-04-16 12:01
2004.05.16
добавление записи в базу


3-1082484394
I.Ru.Ru
2004-04-20 22:06
2004.05.16
Связывание одной дочерней таблицы с двумя родительскими





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