Здравствуйте!
Применил для одной из форм моего проекта возможность перетаскивания за форму. Все компоненты разместил на картинке-background'е. На эту картинку поместил ещё одну картинку, отвечающую за закрытие формы. Но! Когда я жму на эту картинку, окошко просто не хочет закрываться! Вот исходник окна:
| Код | unit monitor;
interface
uses SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons, ImgList, ExtCtrls;
type TForm3 = class(TForm) Image1: TImage; Label1: TLabel; Label2: TLabel; Label3: TLabel; Label4: TLabel; Label5: TLabel; Label6: TLabel; Label10: TLabel; Image2: TImage; Image3: TImage; Image4: TImage; Image5: TImage; Image6: TImage; Label12: TLabel; Label7: TLabel; procedure Image2Click(Sender: TObject); private procedure WMNCHitTest(var M: TWMNCHitTest); message wm_NCHitTest;
public { Public declarations } end;
var Form3: TForm3;
implementation
{$R *.dfm}
procedure TForm3.WMNCHitTest(var M: TWMNCHitTest); begin inherited; if M.Result = htClient then M.Result := htCaption; end;
end.
|
Я пробовал разобраться с этим так:
| Код | procedure TForm3.Image2Click(Sender: TObject); var M: TWMNCHitTest; begin inherited; if M.Result = htCaption then // если форма перетаскивается, то... M.Result := htClient; //делаем её неперетаскиваемой и... Form3.Close;//закрываем программу end;
|
Однако программа также не реагирует! Правда, при помещении на форму кнопки, окошко закрывается, но это очень нежелательно - портит внешний вид. Пожалуйста, помогите.
Заранее спасибо за помощь! |