[delphi] Resize van objecten tijdens runtime

Pagina: 1
Acties:

  • Parcye
  • Registratie: Maart 2001
  • Laatst online: 24-08-2017
De vraag zegt bijna genoeg, maar ik wil dat de gebruiker tijdens runtime de objecten, bijvb de panel1 in mijn form kan vergroten/verkleinen.

Er zijn wel onCanResize events ed maar ik weet niet welke propety ik moet zetten om te zorgen dat ze deze kunnen resizen.

Alvast bedankt,

"Als je het kan bedenken, kan het gemaakt worden" Parcye - 14 januari 2002


  • Engineer
  • Registratie: Juni 2001
  • Laatst online: 04-05 00:03

Engineer

Software

panel1.width := 1000000000000000 :?

Zelfde kan met height..

  • Klippy
  • Registratie: Oktober 2000
  • Laatst online: 16:52

Klippy

Still Game

Op zaterdag 10 november 2001 01:48 schreef hdd het volgende:
panel1.width := 1000000000000000 :?

Zelfde kan met height..
Ja oke, maar dan zou je al een edit ofzo moeten maken waarin gebruiker gegevens kan invoeren. Lijkt mij niet de bedoeling.

Ik ga ff wat proberen.

Steam | SXQncyBhbGwgZ29vZCwgbWFuISDwn5iO


  • Parcye
  • Registratie: Maart 2001
  • Laatst online: 24-08-2017
Ja dat snap ik, maar dat ze tijdens het runnen gewoon door met de muis te vergroten en verkleinen de panel maat aan passen.

"Als je het kan bedenken, kan het gemaakt worden" Parcye - 14 januari 2002


  • Klippy
  • Registratie: Oktober 2000
  • Laatst online: 16:52

Klippy

Still Game

Op zaterdag 10 november 2001 01:57 schreef Parcye het volgende:
Ja dat snap ik, maar dat ze tijdens het runnen gewoon door met de muis te vergroten en verkleinen de panel maat aan passen.
Ik kom er ook niet zo snel uit nee. Ben ook niet echt ervaren met Delphi. Helaas.
Maar als het event bestaat zou het ook moeten gaan denk ik. Hoewel ik het nooit gezien heb....

Steam | SXQncyBhbGwgZ29vZCwgbWFuISDwn5iO


  • Parcye
  • Registratie: Maart 2001
  • Laatst online: 24-08-2017
Precies wat ik dacht

Wat eigenlijk het hele idee is, ik wil een wizard maken voor het maken van een .html frameset template

ik dacht dus:

in mijn delphi app heb ik een frame met daar in de standaard frame set, (opschaal) men kan daar dan de breedte hoogte val de frames aanpassen en dan maak ik de juiste frameset, dus index.html.

"Als je het kan bedenken, kan het gemaakt worden" Parcye - 14 januari 2002


  • Klippy
  • Registratie: Oktober 2000
  • Laatst online: 16:52

Klippy

Still Game

Op zaterdag 10 november 2001 02:07 schreef Parcye het volgende:
Precies wat ik dacht

Wat eigenlijk het hele idee is, ik wil een wizard maken voor het maken van een .html frameset template

ik dacht dus:

in mijn delphi app heb ik een frame met daar in de standaard frame set, (opschaal) men kan daar dan de breedte hoogte val de frames aanpassen en dan maak ik de juiste frameset, dus index.html.
Geinig idee moet ik zeggen.
Maar hoe wil je dat dan doen. Want frames zie ik als lijntjes, niet als panels.
Maar 't kan met panels ja, maar dan zou je dus ook op runtime en panel moeten kunnen invoegen en verwijderen.
Weet niet of dat gaat :?

Steam | SXQncyBhbGwgZ29vZCwgbWFuISDwn5iO


  • Parcye
  • Registratie: Maart 2001
  • Laatst online: 24-08-2017
Ik heb van te voren de frame set bepaald, alleen hoogte en breedte moeten hun nog aanpassen,

je hebt bijvb
frameset 1: banner, left, main
frameset 2: banner, main, footer
frameset 3: left, main, right
frameset 4: main, right, footer

en de breedte hoogte etc moet ingesteld kunnen worden

"Als je het kan bedenken, kan het gemaakt worden" Parcye - 14 januari 2002


  • Klippy
  • Registratie: Oktober 2000
  • Laatst online: 16:52

Klippy

Still Game

Op zaterdag 10 november 2001 02:15 schreef Parcye het volgende:
Ik heb van te voren de frame set bepaald, alleen hoogte en breedte moeten hun nog aanpassen,

je hebt bijvb
frameset 1: banner, left, main
frameset 2: banner, main, footer
frameset 3: left, main, right
frameset 4: main, right, footer

en de breedte hoogte etc moet ingesteld kunnen worden
Dan zou je evt toch kunnen werken met 2 editboxen om de hoogte en breedte in te stellen en daarbij een radiogroup ofzo om het juiste component aan te geven :?

Maar ik zal wel niks meer zeggen, weet toch niet het antwoord op de vraag. Heb net nog ff in de help gekeken maar daar stond ook niet veel in...

Steam | SXQncyBhbGwgZ29vZCwgbWFuISDwn5iO


  • Parcye
  • Registratie: Maart 2001
  • Laatst online: 24-08-2017
Ik zal wel niks meer zeggen
offtopic:
Alle input is welkom dus bek niet houden, gewoon open trekken ;-) Slaap lekker!Morgen maar weer verder.


Misschien doen met scrollbar die je kan instellen, die dus paralel staan aan de left en main en dan waar hij staat in de scrollbalk de breedte van de frame pakken...

maar toch wil ik met resize van componenten werken ;-)

"Als je het kan bedenken, kan het gemaakt worden" Parcye - 14 januari 2002


  • Klippy
  • Registratie: Oktober 2000
  • Laatst online: 16:52

Klippy

Still Game

Op zaterdag 10 november 2001 02:23 schreef Parcye het volgende:

[..]

offtopic:
Alle input is welkom dus bek niet houden, gewoon open trekken ;-) Slaap lekker!Morgen maar weer verder.


[..]
Doe ik normaal ook, maar had nu niks nuttigs meer te melden :P

Steam | SXQncyBhbGwgZ29vZCwgbWFuISDwn5iO


  • Sponz
  • Registratie: Juni 2001
  • Niet online

Sponz

nul nest parfait saif moi

Op zaterdag 10 november 2001 01:18 schreef Parcye het volgende:
De vraag zegt bijna genoeg, maar ik wil dat de gebruiker tijdens runtime de objecten, bijvb de panel1 in mijn form kan vergroten/verkleinen.

Er zijn wel onCanResize events ed maar ik weet niet welke propety ik moet zetten om te zorgen dat ze deze kunnen resizen.

Alvast bedankt,
Kun je niet gebruik maken van splitbars?

  • jelmervos
  • Registratie: Oktober 2000
  • Niet online

jelmervos

Simple user

Op zaterdag 10 november 2001 02:29 schreef Sponz het volgende:

[..]

Kun je niet gebruik maken van splitbars?
Idd, net zoals in IE bij resizeable frames. :)

"The shell stopped unexpectedly and Explorer.exe was restarted."


  • Creepy
  • Registratie: Juni 2001
  • Laatst online: 20:39

Creepy

Tactical Espionage Splatterer

Je wilt dus dat de gebruiker met de muis panels groter/kleiner kan slepen?

Kijk in de onmousedown event van het panel of de muiscursor aan de rand zit. Zo ja, dan moet er geresized worden.

Kijk daarna in de onmousemove event hoe de muiscursor zich verplaats, en pas aan de hand hiervan de panel.left,top,width of height aan.

En wacht de onmouseupevent af om te stoppen met resizen.

"I had a problem, I solved it with regular expressions. Now I have two problems". That's shows a lack of appreciation for regular expressions: "I know have _star_ problems" --Kevlin Henney


Verwijderd

Zet in je public declartion
code:
1
moven : boolean;

Dan in je panel mousedown :
code:
1
2
3
4
5
procedure TForm1.Panel1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  moven := true;
end;

Dan in je oncreate :
code:
1
2
3
4
procedure TForm1.FormCreate(Sender: TObject);
begin
  moven := false;
end;

Dan in je panel mousemove :
code:
1
2
3
4
5
6
7
8
9
procedure TForm1.Panel1MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
  if moven then
  begin
    Panel1.Width := X;
    Panel1.Height := Y;
  end;
end;

Dan in je panel exit :
code:
1
2
3
4
procedure TForm1.Panel1Exit(Sender: TObject);
begin
  moven := false;
end;

Dan in je panel mouseup :
code:
1
2
3
4
5
procedure TForm1.Panel1MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  moven := false;
end;

En dan moet het helemaal lukken en wil je er nog blokjes omheen dan moet je zelf ff puzzelen en kom je er niet uit dan moet je nog maar ff posten dan probeer ik dat ook nog wel ff.

succes verder
Pagina: 1