20. juni 2001 - 19:09Der er
10 kommentarer og 2 løsninger
Simulere en titellinje
Hej, jeg har lavet en form uden en titellinje. Jeg har gjort det fordi jeg synes den er grim. Jeg har lavet min egen baggrund, hvor der er tegnet en titellinje(en pæn en). Nu vil jeg bare gerne have at den funker(altså at man trykker og holder nede for at flytte på den.
procedure TForm1.Idle(Sender: TObject; var Done: Boolean); var p: TPoint; begin if mouse then begin done:=false; GetCursorPos(p); form1.left:=p.x-mp.x; form1.top:=p.y-mp.y; end; end;
procedure TForm1.FormCreate(Sender: TObject); begin Application.OnIdle:=Idle; end;
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin if y<10 then begin mouse:=true; mp.x:=x; mp.y:=y; end; end;
Jeg har været ude for det samme problem... Prøv dette her (denne kode virker dog for HELE din form, da den er skrevet i FormMouseDown & FormMouseMove Procedure - men det kan du jo sagtens flytte til en hvilken som helst anden control\'s MouseDown & MouseMove Procedure)
var sx, sy : integer; procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin sx := x; sy := y; end;
procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin
if ssleft in sshift then begin if x < sx-1 then left := x-(sx-left); if x > sx+1 then left := x+(left-sx); if y < sy-1 then top := y-(sy-top); if y > sy+1 then top:= y+(top-sy); end;
Eksperten burde have en funktion som tjekker spørgsmål og automatisk lukke dem, hvis de er blevet besvaret og ikke er blevet lukket af den oprettende spørger, efter en hvis tidsrum.
Undskyld!!!!!!!!!!!!, jeg har været på ferie og har glemt alt om spørgsmålet. Jeg har ikke tjekket hvad der er bedst, men deler pointene. Håber i kan tage imod min undskyldning, det skal aldrig ske igen......
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.