Newsgroup: it.comp.lang.visual-basic
Titolo: Resize Form

Ciao ho provato a cercare nel newsgroup se c'era quello che cercavo ma nn
l'ho trovato...
Quindi volevo chiedervi come faccio in VB6 a fare in modo che 1 oggetto x
esempio 1 bottone rimanga ancorato anche quando ingrandisco la finestra
sempre nella stessa posizione? cioč se č in fondo vicino al bordo rimanga li
anche quando lo ingrandisco?
Ciao e grazie a tutti

Non c'è un modo già pronto per farlo.
Purtroppo 'sta cosa è la mia piaga... :(
Ti tocca andare nell'evento Resize e spostare l'oggetto man mano che il 
form si ridimensiona.
Occhio al caso in cui i form raggiunge le dimensioni minime o viene 
ridotto a icona: se ridimensioni degli oggetti, questi diventano di 
dimensione nulla se non esegui controlli sufficienti, e quindi crash del 
programma...
-- 
Quando noi ignoranti eravamo di più,
tutto era più bello...
(Adriano Celentano)

 ha scritto nel messaggio
news:40d08324$1...@x-privat.org...


Non si ridimensiona tutto manualmente chi programma, ma se per esempio 
su un form ho una casella di testo che deve occupare l'intero form 
qualunque sia la dimensione di quest'ultimo, allora in genere faccio una 
cosa del tipo:
Sub Form_Resize
   Text1.Move 0, 0, ScaleWidth, ScaleHeight
End Sub
Se invece voglio che un pulsante stia sempre in basso a destra nel form 
faccio:
Sub Form_Resize
   Command1.Move ScaleWidth - Command1.Width - ScaleX(120, vbTwips, 
Scalemode), ScaleHeight - COmmand1.Height - ScaleY(120, vbTwips, Scalemode)
End Sub
E cosě via per tutti gli oggetti che "hanno bisogno" di essere ancorati 
(quindi non metto mani su qualunque oggetto presente nel form).
-- 
Quando noi ignoranti eravamo di piů,
tutto era piů bello...
(Adriano Celentano)

 ha scritto nel messaggio
news:40d08697$1...@x-privat.org...


 allargare e allungare fino in fondo 1 listview poco sopra del pulsante?
Allora nel resize fai le due operazioni:
1) Muovi il pulsante affinchč sia posizionato nell'angolo inferiore destro;
Command1.move scalewidth-command1.width-120, scaleheight-command1.height-120
2) Scianchi (nel dialetto Tarantino significa allarghi) il ListView 
facendo riferimento a ScaleWidth (larghezzadel form) per la sua 
dimensione orizziontale, e Command1.Top per la sua dimensione verticale.
In questo modo il listview occupa orizzontalmente l'intero form e 
verticalmente termina al di sopra del pulsante.
ListView.Move 0,0,scalewidth,command1.top-120
Ovviamente le operazioni devono trovarsi in questo ordine, e non al 
contrario.


 ha scritto nel messaggio
news:40d08a15$2...@x-privat.org...


 e nn solo il record "padre"?
Certo. Nelle properitŕ del ListView c'č FullRowSelect, settalo a true.
O da codice: ListView.FullRowSelect = True
-- 
Quando noi ignoranti eravamo di piů,
tutto era piů bello...
(A. Celentano)

 Ciao e grazie
_e'_ una cosa lunga.
seno' .net ha l'anchor.
ciao, j.

 seno' .net ha l'anchor.
Tutto sommato credo che sia piuttosto banale scrivere una classe che si
gestisca la cosa.
Basta che la classe mantenga un array di coppie <controllo ancorato> e
<controllo da ancorare>, nella Load le si riempie (la classe si piglia in
automatico le coordinate dei due) e poi nel resize con un loop 'sta classe
riposiziona tutto per bene.
Ciao
--
NeoDataType : 
http://www.neodatatype.net
Sito Comune : 
http://www.it-lang-vb.net