PDA

Visualizza la versione completa : [VB] Form multipli nel solito spazio, ma come fanno ???


w_t
03-05-2002, 19: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???

Wild78
08-05-2002, 08:12
Detto in soldoni, devi sovrapporre tanti FRAME e mettere dentro ad ogni frame i controlli di cui necessiti...

Poi a seconda delle tue esigenze ne richiami uno o l'altro.

w_t
08-05-2002, 11:42
Intendi dire con tanti "Panel" sovrapposti con "Visible" impostato a "False" e poi li richiamo con "Panel.Visible = True", non conosco i "FRAME"...

sebamix
08-05-2002, 14:26
Se non ho capito male quello che intendi tu Ŕ l'interfaccia MDI.

w_t
08-05-2002, 15:02
Originariamente inviato da sebamix
Se non ho capito male quello che intendi tu Ŕ l'interfaccia MDI.

Non so cosa sia l'interfaccia MDI.........

fammi il tuo esempio.

sebamix
08-05-2002, 20:27
In VB ci sono 2 tipi di form "predefinite":
-quella standard
-quella MDI
La form MDI non Ŕ altro che un contenitore di altre form.
Apri VB e seleziona progetto->inserisci form MDI
A questo punto inserisci un form normale ed imposta la sua property MDIChild su true.
Imposta come oggetto di avvio (menu progetto->proprietÓ di...) la form mdi e nel form load metti il codice per aprire la form standard.

Ti faccio un esempio:
Inserisci il form MDI
- MDIForm
Inserisci un form standard
- Form1
Imposti MDIForm come oggetto di avvio;
Nell'evento MDIForm_Load di MDIForm metti
Form1.show

Avvi il progetto e ti si apre Form1 all'interno di MDIForm.

Capito?

Adesso ti spiego cos'Ŕ l'interfaccia MDI.
Principalmente quando si parla di interfacce si deve fare riferimento a SDI e MDI. Sono sigle e non ne conosco il significato esatto :D .
Un'applicazione SDI apre pi¨ finestre e le sparpaglia in giro, un applicazione MDI mette tutte (o quasi) le finestre dentro una finestra principale, che in VB Ŕ appunto la form MDI.

Mi sa che ti ho fatto fare casino... :stordita:

vonkranz
09-05-2002, 00:14
Secondo me intendeva l'uso della TabStrip oppure quella della SSTab.

Prova a vedere come funziona questo controllo (devi inserirlo, non e' uno di quelli standard di VB).... ovviamente ammesso e non concesso che in VB.Net ci sia qualche cosa di simile...

w_t
09-05-2002, 02:21
Originariamente inviato da sebamix
In VB ci sono 2 tipi di form "predefinite":
-quella standard
-quella MDI
La form MDI non Ŕ altro che un contenitore di altre form.
Apri VB e seleziona progetto->inserisci form MDI
A questo punto inserisci un form normale ed imposta la sua property MDIChild su true.
Imposta come oggetto di avvio (menu progetto->proprietÓ di...) la form mdi e nel form load metti il codice per aprire la form standard.

Ti faccio un esempio:
Inserisci il form MDI
- MDIForm
Inserisci un form standard
- Form1
Imposti MDIForm come oggetto di avvio;
Nell'evento MDIForm_Load di MDIForm metti
Form1.show

Avvi il progetto e ti si apre Form1 all'interno di MDIForm.

Capito?

Adesso ti spiego cos'Ŕ l'interfaccia MDI.
Principalmente quando si parla di interfacce si deve fare riferimento a SDI e MDI. Sono sigle e non ne conosco il significato esatto :D .
Un'applicazione SDI apre pi¨ finestre e le sparpaglia in giro, un applicazione MDI mette tutte (o quasi) le finestre dentro una finestra principale, che in VB Ŕ appunto la form MDI.

Mi sa che ti ho fatto fare casino... :stordita:

No ai detto bene solo che io in VB.NET ho il controllo "IsMdiContainer" che impostato nel form "Madre" include al suo interno il form "Figlio" e per visualizzarlo si fa:

Dim MioForm As New NomeFormCreato()
MioForm.Show()

e si apre il form "Figlio" all'interno del Form "Madre", ma non e' proprio questo che volevo, per il motivo che se ho dei pulsanti di menu in testa al Form "Madre", rimangono in primo piano a confronto con il Form "Figlio", in modo da coprire la testa(il top) del Form "Figlio".
Io vorrei che il Container non mi si espandesso per tutta la grandezza del Form "Madre", ma potere discostarlo dal "Top" di 30/40 Px.
Oppure ho risolto sovrapponendo dei "Panel" e giocando nella proprieta' "Panel1.Visible = True o False, Panel2.Visible = True o False, e coi via..."

w_t
09-05-2002, 02:27
Originariamente inviato da vonkranz
Secondo me intendeva l'uso della TabStrip oppure quella della SSTab.

Prova a vedere come funziona questo controllo (devi inserirlo, non e' uno di quelli standard di VB).... ovviamente ammesso e non concesso che in VB.Net ci sia qualche cosa di simile...

Ho trovato questo su MSDN:


Option Explicit
Private mintCurFrame As Integer' Current Frame visible

Private Sub Tabstrip1_Click()
If Tabstrip1.SelectedItem.Index = mintCurFrame _
Then Exit Sub ' No need to change frame.
' Otherwise, hide old frame, show new.
Frame1(Tabstrip1.SelectedItem.Index).Visible = True
Frame1(mintCurFrame).Visible = False
' Set mintCurFrame to new value.
mintCurFrame = Tabstrip1.SelectedItem.Index
End Sub


Ma non so cosa sia e ne come si usa, quindi non posso interpretarlo per VB.NET, mi puoi dire qualcosa???

vonkranz
09-05-2002, 10:08
Ecco quello che dice in generale l'help in linea di VB6 riguardo il controllo che ti ho citato.



Controllo Tabbed Dialog (finestra di dialogo strutturata a schede)


Il controllo Tabbed Dialog (finestra di dialogo strutturata a schede) fornisce un gruppo di schede, ognuna delle quali fa da contenitore per altri controlli. Nel controllo Ŕ attiva una sola scheda alla volta, che mostra all'utente i controlli in essa contenuti e nasconde quelli contenuti nelle altre schede.

Sintassi

SSTab

Osservazioni

Il controllo Tabbed Dialog Ŕ paragonabile alle schede divisorie di un'agenda o alle etichette di un gruppo di cartelle di archivio. Utilizzando un controllo Tabbed Dialog Ŕ possibile definire pi¨ pagine per la stessa area di una finestra o di una finestra di dialogo nell'applicazione. Le proprietÓ di questo controllo consentono di:

Stabilire il numero di schede.


Disporre le schede su pi¨ file.


Impostare il testo per ogni scheda.


Visualizzare un elemento grafico in ogni scheda.


Stabilire lo stile da utilizzare per le schede.


Impostare le dimensioni di ogni scheda.
Per utilizzare questo controllo occorre in primo luogo decidere come disporre i controlli nelle varie schede. Impostare le proprietÓ Tabs e TabsPerRow per creare le schede e disporle su una o pi¨ file. In fase di progettazione, selezionare quindi ogni scheda facendo clic su di essa e disegnare i controlli da visualizzare quando l'utente seleziona la scheda. Impostare le proprietÓ Caption, Picture, TabHeight e TabMaxWidth come necessario per personalizzare la parte superiore della scheda.

In fase di esecuzione, gli utenti possono spostarsi da una scheda all'altra premendo CTRL+TAB o utilizzando tasti di scelta rapida definiti nella didascalia di ogni scheda.

╚ inoltre possibile personalizzare l'intero controllo Tabbed Dialog utilizzando le proprietÓ Style, ShowFocusRect, TabOrientation e WordWrap.

Nota Il controllo Tabbed Dialog si trova nel file Tabctl32.ocx. Per utilizzare il controllo Tabbed Dialog nelle applicazioni, Ŕ necessario aggiungere al progetto il file .ocx del controllo. Quando si distribuisce l'applicazione, il file .ocx appropriato deve essere installato nella directory System o System32 di Microsoft Windows. Per ulteriori informazioni sull'utilizzo di controlli aggiuntivi in un progetto, vedere il Manuale del programmatore di Visual Basic.


Prova a fare cosi':

-Inserisci nel progetto il Microsoft Tabbed Dialog Control 6.0
-Quando compare nella ToolBox, ci clicchi sopra con il mouse
-Premi F1 per attivare l'help contestuale.

Ciao.

Loading