Avatar billede stone Forsker
03. juli 2000 - 22:35 Der er 4 kommentarer og
1 løsning

move form

på en form er der images,hver images er en knap.
Form er sat til borderstyle=bsnone.
hvis jeg bruger koden:
wmnchitTest(var M: TwmnchitTest);message wm_nchitTest;
i (privat)
og under{$R *.DFM}
procedure TForm1.wmnchitTest(var M: twmnchitTest);
begin
inherited;
if
M.Result = htClient then M.Result := htCaption;

Så virker knapperne ikke, men jeg kan flytte rundt på formen.

hvorfor???

Avatar billede stone Forsker
03. juli 2000 - 22:38 #1
glemte lige en ting.
image1 er sat til allclient.39 andre images er knapper.
Avatar billede zieglersoft Nybegynder
04. juli 2000 - 12:04 #2
Din løsning vil ikke lade komponter der ikke er nedarvet fra TWinControl få mulighed for at virke (de bliver bare regnet som en del af baggrunden af din form.

En anden løsning, kaunne være at putte følgende i en OnMouseDown event på din form:

Const
  SC_DRAGMOVE = $F012;
begin
  ReleaseCapture;
  With Sender as tWinControl Do Perform(WM_SYSCOMMAND,SC_DRAGMOVE,0);
end;

Den virker

MVH Claus Ziegler
ZieglerSoft
Avatar billede stone Forsker
04. juli 2000 - 18:43 #3
den virker!! kun hvis der ikke er image
på formen.Har prøvet at sætte den onmousedown på Image, men så får jeg en fejlmelding (invalid class typecast)
når Image er sat til allclient er det image man 'dragger'.
Avatar billede zieglersoft Nybegynder
04. juli 2000 - 18:54 #4
Ja, der virker den ikke. Du kunne måske sende den videre til formen nedenunder i onMouseDown på din Image (Det virker fordi du allerede er på formen). Som f.eks. således:

procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
Const
  SC_DRAGMOVE = $F012;
begin
  ReleaseCapture;
  Perform(WM_SYSCOMMAND,SC_DRAGMOVE,0);
end;

Den skulle gerne gøre hvad du ønsker. Jeg overså at Image1 var sat til alClient

Avatar billede stone Forsker
04. juli 2000 - 20:02 #5
virker som det skal...
takker
stone
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester