|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Feb 2003
Messaggi: 2805
|
[VB6] Icona in esecuzione
Perchè quando eseguo il mio programma che ho fatto in VB, non mi crea l'icona l'applicativo nella barre in basso, è tutto funzionante ma nella barra non compare
Per quale motivo???????
__________________
AMD 3700x --- ASUS X570 CROSSHEAR VIII HERO --- 4x 8GB Corsair Vengeance RGB PRO 3600 MHz --- SSD: Samsung 980Pro 1TBb --- EVGA RTX 2070 SUPER |
![]() |
![]() |
![]() |
#2 | |
Senior Member
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
|
Quote:
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%) |
|
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Feb 2003
Messaggi: 2805
|
Niente
Non compare proprio in barra.
Spiego. Ho una form di avio "frmSplash" Nella proprietà della form di frmspalsh c'è SHOW IN TASKBAR quindi mettendo tale voce su TRUE, quando avvio l'applicazione mi compare in barra Dopo 3 sec, si apre il panello (Form1), e nel pannello in LOAD FORM ho messo unload frmsplash cosi chiudo la form di avvio. Appena si apre il panello e si chiude la form dalla barra scompare; Ho provato ametter anche nel panello il valore su TRUE ma non funziona. Da cosa può dipendere???? Ciao e grazieeeeeeee
__________________
AMD 3700x --- ASUS X570 CROSSHEAR VIII HERO --- 4x 8GB Corsair Vengeance RGB PRO 3600 MHz --- SSD: Samsung 980Pro 1TBb --- EVGA RTX 2070 SUPER |
![]() |
![]() |
![]() |
#4 |
Member
Iscritto dal: Aug 2001
Città: Gerenzano
Messaggi: 129
|
Il problema è causato dal fatto che la form viene caricata in maniera modale (vbModal) e le form modali non vengono visualizzate nella task-bar.
Se vuoi che venga visualizzata l'icona della form nella task-bar, devi visualizzare la form come Modeless (.show vbModeless), oppure puoi provare a cambiare lo stile della finestra tramite le API (...mi sembra che ci sia la Fx SetWindowStyle) ma non ho mai provato e non so se si riesce.... Ciao!
__________________
E' quasi tutto relativo! |
![]() |
![]() |
![]() |
#5 | |
Senior Member
Iscritto dal: Feb 2003
Messaggi: 2805
|
OK
Quote:
Ok risolto, era proprio li il problema bastava sostituire vbmodal con vbmodeless Mi potresti spiegare gentilmente la differenza tra i due parametri, cosi posso imparare quando usare uno e quando l'altro... Ciao e grazieeeeeeeeee
__________________
AMD 3700x --- ASUS X570 CROSSHEAR VIII HERO --- 4x 8GB Corsair Vengeance RGB PRO 3600 MHz --- SSD: Samsung 980Pro 1TBb --- EVGA RTX 2070 SUPER |
|
![]() |
![]() |
![]() |
#6 |
Member
Iscritto dal: Aug 2001
Città: Gerenzano
Messaggi: 129
|
La differenza tra i due parametri è MOLTO importante:
vbModal => Finestra modale Questo tipo di finestra è una finestra a scelta obbligatoria, ovvero una finestra che ha sempre la selezione su di se (focus attivo), tranne nel caso in cui si apra un'altra finestra a scelta obbligatoria. Per farti un esempio, una finestra vbModal per esempio è quella che compare in VB quando utilizzi il tool "Salva con nome..." del menù file.Quando appare la finestra di salvataggio, non puoi passare alle finestre in secondo piano ma devi x forza chiudere prima la form modale. L'esecuzione del codice VB quando carichi una form modale viene interrotta (prosegue solamente la gestione degli eventi) e riprende solamente quando la form viene chiusa.Guarda questo codice di esempio (serve un progetto con 2 form e nel form1 c'è un pulsante x visualizzare una form modale): Codice:
Private Sub Command1_Click() Dim oFormModale As Form Set oFormModale = New Form2 Load oFormModale ' *** Quando carichi una form Modale, il codice si ferma in questo punto e viene ' gestito solo il codice degli eventi. ' oFormModale.Show vbModal MsgBox "Questo messaggio compare solo quando hai chiuso la finestra modale" End Sub ----------------------------------------------------------- vbModeless => Finestra non modale Questo tipo di finestra NON è a scelta obbligatoria, ciò significa che è possibile caricare varie form Modeless e che l'esecuzione del codice procede oltre il metodo .Show Esempio di codice simile a quello precedente: Codice:
Private Sub Command1_Click() Dim oFormModale As Form Set oFormModale = New Form2 Load oFormModale ' *** Quando carichi una form Modeless, il codice prosegue... ' oFormModale.Show vbModeless MsgBox "Questo messaggio compare dopo aver aperto la finestra NON MODALE" End Sub CIAO!
__________________
E' quasi tutto relativo! |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 22:19.