PDA

View Full Version : [VB] Form multipli nel solito spazio, ma come fanno ???


race2
03-05-2002, 18:38
Ma come fanno a fare apparire molti form nella solita posizione, in una applicazione tipo quella che vedete nel link ---> http://web.tiscali.it/fatturazionew/schermate.htm <---

Io sviluppo in VB.NET, e vorrei riuscire a fare delle interfacce come questa, ma non riesco a sovrapporre tutti quei strimenti, form, label, textbox, ecc...

mi dite come si fa???

atragon
03-05-2002, 19:10
Forse non ho capito la tua richiesta, nel qual caso ti chiedo scusa, ma per creare interfaccie a form "apparentemente" multipli basta usare il componente tabcontrol (su Win) o scaricarti gli appositi equivalenti da mamma MS se vuoi generarti le stesse interfaccie in una applicazione web.

race2
03-05-2002, 19:43
Originariamente inviato da atragon
[B]Forse non ho capito la tua richiesta, nel qual caso ti chiedo scusa, ma per creare interfaccie a form "apparentemente" multipli basta usare il componente tabcontrol (su Win) o scaricarti gli appositi equivalenti da mamma MS se vuoi generarti le stesse interfaccie in una applicazione web.


Ti spiego:
io ho il " Visual Studio .NET Beta2 ", conosco al 30% il "VB.NET" diciamo che ho studiato solo un manuale intero da 800 pagine, ma e' solo un piccolo inizio alla programmazione in "VB.NET", nel libro non accenna minimamente all'argomento mio, eil punto e':

dato le foto che hai visto, soffermati nelle prime due,

e' stato creato un interfaccia dei "clienti/fornitori" nel primo evento "ButtonClick()" che visualizza due "TextBox()" e un "TabControl()" che prendono tutta la superficie del Form,

ora a questo punto non c'e' piu' spazio per niente nel Form, e allora mi dici come e' possibile che con il secondo bottone del menu' "Articoli" ha inserito un "TabControl" e due TextBox() diversi da prima nel solito Form ???

li ha sovrapposti o cosa ???

e se io voglio creare un interfaccia con 10 pulsanti e ad ogniuno associare dei controlli come hanno fatto loro, ma sempre nel solito Form ???

atragon
03-05-2002, 20:11
Al volo: attraverso l'attributo Visible puoi scegliere cosa visualizzare es. (il codice è C#)

private void button2_Click(object sender, System.EventArgs e)
{
tabControl2.Visible = false;
tabControl1.Visible = true;
}

Cioè la pressione del tasto Button2 rende visibile il tabcontrol1 e nasconde l'altro, che può condividere lo stesso spazio. In partenza possono essere entrambi non visibili oppure puoi farne vedere uno e nascondere l'altro...Esistono altre tecniche ma questa è semplice...

race2
03-05-2002, 22:20
Certo questo lo so, ma ti immagini inserire 5-6 controlli sovrapposti ???

in modalita' "progettazione" sono sempre visibili, non li puoi nascondere i primi che crei.......!!!


Devo chiederti altre due cose:

1) come si inserisce un evento alla chiusura di un Form, tipo:

Private Sub MenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem1.Click
MessageBox.Show("Sei sicuro di volere uscire ?", "Esci", MessageBoxButtons.OKCancel, MessageBoxIcon.Hand, MessageBoxDefaultButton.Button2)
Me.Close()
End Sub

Misi chiude in ogni caso, ma se clicco su "Cancel" voglio rimanere !!!


2) Al form principale ho aggiunto un altro form e lo richiamo in questo modo:

Private Sub btnBrowser_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBrowser.Click
Dim Brow As New Browser()
Brow.Show()
End Sub

Il problema e' che se clicco 10 volte mi apre 10 form , e io non voglio questo, fino che e' aperto il primo form secondario, cliccando non ne deve aprire un altro, come si fa ???

atragon
04-05-2002, 09:12
<<Certo questo lo so, ma ti immagini inserire 5-6 controlli sovrapposti ???

Beh, questo è vero però a design time i tuoi componenti te li gestisci come vuoi, li sbatti a destra e a manca, salvo riallinearli al momento opportuno... Con i Tabcontrol questo è + complesso, sicuramente. Un'altra idea può essere creare i controlli a run-time ma è parecchio + laborioso.

<<) come si inserisce un evento alla chiusura di un Form, tipo:

Anche stavolta posso non avere capito, intendi qualche cosa del genere:

Public Sub ExitApplication()
If MessageBox.Show ("Do you want to exit?", "My Application", _
MessageBoxButtons.YesNo, MessageBoxIcon.Question) _
= DialogResult.Yes Then
Application.Exit
End If
End Sub

<<2) Al form principale ho aggiunto un altro form e lo richiamo in questo modo:

Appena rientro guardo uno dei miei vecchi progetti di test perchè quel problema, se ben ricordo, lo avevo risolto, in passato...

race2
04-05-2002, 11:46
Originariamente inviato da atragon
[B]<<Certo questo lo so, ma ti immagini inserire 5-6 controlli sovrapposti ???

Beh, questo è vero però a design time i tuoi componenti te li gestisci come vuoi, li sbatti a destra e a manca, salvo riallinearli al momento opportuno... Con i Tabcontrol questo è + complesso, sicuramente. Un'altra idea può essere creare i controlli a run-time ma è parecchio + laborioso.

<<) come si inserisce un evento alla chiusura di un Form, tipo:

Anche stavolta posso non avere capito, intendi qualche cosa del genere:

Public Sub ExitApplication()
If MessageBox.Show ("Do you want to exit?", "My Application", _
MessageBoxButtons.YesNo, MessageBoxIcon.Question) _
= DialogResult.Yes Then
Application.Exit
End If
End Sub

<<2) Al form principale ho aggiunto un altro form e lo richiamo in questo modo:

Appena rientro guardo uno dei miei vecchi progetti di test perchè quel problema, se ben ricordo, lo avevo risolto, in passato...

Hai capito benissimo, e' quello che volevo, scusa se faccio dei treand cosi banali ma alle volte il troppo impegnarsi ti fa dimenticare le cose facili, grazie molte.