|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: Feb 2006
Città: Macondo
Messaggi: 50
|
Nuovo tipo di finestra MessageBox
Salve,
qualcuno sa come si implementano quelle finestre di notifica che scorrono dal basso verso l'alto nella parte in basso a destra della barra delle applicazioni? Le utilizzano programmi come "Download Accelerator" e alcuni antivirus per notificare dei messaggi senza bloccare gli applicativi in esecuzione (a differenza della classica MessageBox). Vorrei sapere se c'è qualche libreria o controllo OCX, oppure se bisogna farlo a mano, a prescindere dal linguaggio usato. Spero di essermi spiegato. Grazie. |
|
|
|
|
|
#2 | |
|
Senior Member
Iscritto dal: Jan 2006
Messaggi: 2722
|
Quote:
Comunqe non è che sia così difficile animare una messagebox, puoi farlo tranquillamente a mano senza troppa fatica
__________________
- Spesso gli errori sono solo i passi intermedi che portano al fallimento totale. - A volte penso che la prova piu' sicura che esiste da qualche parte una forma di vita intelligente e' il fatto che non ha mai tentato di mettersi in contatto con noi. -- Bill Watterson |
|
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Nov 2003
Messaggi: 980
|
Non è un nuovo tipo di finestra, se ci pensi bene è una finestra normale che viene a poco a poco mostrata (o ridimensionata) fino a mostrarsi tutta.
Basta un timer (SetTimer, WM_TIMER) e SetWindowPos: posizioni la tua finestra in basso a destra, sotto la barra delle applicazioni, crei un timer e nel timer incrementi ogni volta la posizione verticale della finestra. Distruggi il timer quando hai finito. Stessa cosa al contrario quando devi nasconderlo. |
|
|
|
|
|
#4 |
|
Member
Iscritto dal: Feb 2006
Città: Macondo
Messaggi: 50
|
Grazie a -fidel- e kk3z per i suggerimenti,
visto che ci sono: come si procede per personalizzare il look di una finestra in WinXP? Voglio dire p.es. per cambiare l'aspetto della barra del titolo, dei pulsanti ingrandimento/riduzione ecc. Io utilizzo C++ (Borland o MS), ma anche qualche suggerimento in VB6 mi farebbe comodo. Ultima modifica di gusamorim : 20-02-2006 alle 12:13. |
|
|
|
|
|
#5 | |
|
Senior Member
Iscritto dal: Jan 2006
Messaggi: 2722
|
Quote:
EDIT: con questo metodo puoi anche facilmente modificare l'aspetto della messagebox fornita dalle API di windows, così da rendere inutile la creazione di una nuova finestra di dialogo solo per mostrare un messaggio a scomparsa. E' più comodo mi pare sfruttare le messagebox fornite già da windows e personalizzarle più che creare una nuova finestra apposta
__________________
- Spesso gli errori sono solo i passi intermedi che portano al fallimento totale. - A volte penso che la prova piu' sicura che esiste da qualche parte una forma di vita intelligente e' il fatto che non ha mai tentato di mettersi in contatto con noi. -- Bill Watterson Ultima modifica di -fidel- : 20-02-2006 alle 12:20. |
|
|
|
|
|
|
#6 | |
|
Senior Member
Iscritto dal: Jan 2006
Messaggi: 2722
|
Quote:
NomeMiaApplicazione.exe.manifest contenuto del file: <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0"> <assemblyIdentity version="1.0.0.0" processorArchitecture="X86" name="CompanyName.ProductName.YourApp" type="win32" /> <description>Scrivi qui la descrizione della tua applicazione</description> <dependency> <dependentAssembly> <assemblyIdentity type="win32" name="Microsoft.Windows.Common-Controls" version="6.0.0.0" processorArchitecture="X86" publicKeyToken="6595b64144ccf1df" language="*" /> </dependentAssembly> </dependency> </assembly> Prova ad eseguire la tua applicazione e vedi la differenza Se invece vuoi creare uno stile tutto tuo (ad esempio tipo MusicMatch...) allora ti rimando alla Msdn perchè il discorso è piuttosto lungo.
__________________
- Spesso gli errori sono solo i passi intermedi che portano al fallimento totale. - A volte penso che la prova piu' sicura che esiste da qualche parte una forma di vita intelligente e' il fatto che non ha mai tentato di mettersi in contatto con noi. -- Bill Watterson |
|
|
|
|
|
|
#7 | |
|
Senior Member
Iscritto dal: Nov 2003
Messaggi: 980
|
Quote:
|
|
|
|
|
|
|
#8 | |
|
Senior Member
Iscritto dal: Jan 2006
Messaggi: 2722
|
Quote:
Animare una messagebox però risulta molto conveniente perchè, una volta padroneggiato il meccanismo delle hook procedures, posso creare una messagebox personalizzata con poca fatica: l'unica difficoltà è appunt intercettare la chiamata alla funzione MessageBox() delle API di windows, personalizzarla poi è facilissimo, e ti permette di sfruttare tutto il codice scritto dagli uomini Microsoft invece di diseganre tutto a mano
__________________
- Spesso gli errori sono solo i passi intermedi che portano al fallimento totale. - A volte penso che la prova piu' sicura che esiste da qualche parte una forma di vita intelligente e' il fatto che non ha mai tentato di mettersi in contatto con noi. -- Bill Watterson |
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 13:42.



















