![]() |
|
#1
|
|||
|
|||
![]() Вот ещё вопрос: как сделать, чтобы форму можно было таскать за любое место самой формы, когда форма находится в режиме BorderStyle-bsNone
Заранее благодарен. |
#2
|
||||
|
||||
![]() код из drkb
Код:
unit DragMain; interface uses SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls, Forms, Dialogs, StdCrtls; type TForm1 = class(TForm) Button1: TButton; procedure ButtonClick(Sender: TObject); private procedure WMNCHitTest(var M: TWMNCHitTest); message wm_NCCHitTest; end; var Form1: TForm1; implementation {$R *.DFM} procedure TForm1. WMNCHitTest(var M: TWMNCHitTest); begin inherited; if M.Result = htClient then M.Result := htCaption; end; procedure TForm1.Button1Click(Sender: TObject); begin Close; end; end. Некоторые программисты настолько ленивы, что сразу пишут рабочий код. Если вас наказали ни за что - радуйтесь: вы ни в чем не виноваты. |
#3
|
|||
|
|||
![]() Что-то не тянет выделяет во это “message wm_NCCHitTest;” может я что-то забыл дописать в проекте ?
|
#4
|
||||
|
||||
![]() Код:
procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); const SC_DRAGMOVE = $F012; begin ReleaseCapture; Form1.Perform(WM_SYSCOMMAND, SC_DRAGMOVE, 0); end; Либо делать все ручками если так не знаеш как. Обрабатывать события onMouseDown, -Up, -Move |