Mi piacerebbe implementare una funzione nella mia applicazione in cui mostrare una finestra di dialogo per l'utente e il modulo principale (similar to how jQuery looks). La mia unica idea è di prendere uno screenshot del modulo, posizionarlo come sfondo di un pannello (con opacità a mio piacimento), quindi spingere il pannello su tutto il modulo. Devo credere che ci sia un modo migliore per farlo, qualche suggerimento?Qual è il modo migliore per "attenuare" lo sfondo di winform durante la visualizzazione di una finestra di dialogo?
risposta
La proprietà Opacità è ciò di cui hai bisogno per "attenuare" un modulo. Dovrai creare una sovrapposizione, il mio codice in this thread mostra come farlo.
Fare attenzione a non sembrare che il programma visualizzi un prompt UAC. Sebbene forse appropriato nei browser, l'utente non avrà mai problemi nel riconoscere che una finestra sovrapposta a una finestra di dialogo è disabilitata. I controlli si dipingono in modo diverso per renderlo chiaro.
Perché non basta impostare l'opacità a qualcosa come il 50% della finestra genitore prima di avviare la finestra di dialogo modale e quindi tornare al 100% quando la finestra di dialogo modale viene chiusa? Questo non è esattamente quello che stai chiedendo serve la stessa funzione per l'utente finale.
Se vuoi fare qualcosa come il tuo esempio di JQuery, dovresti davvero fare lo screen cap/augment/set come idea di sfondo che hai descritto.
So che questo è un thread vecchio, ma se sei ancora interessato puoi dare un'occhiata a questo progetto.
- 1. Come spostare una finestra di dialogo Winform
- 2. Qual è il modo corretto per modificare lo spazio dei nomi di un modulo di WinForm?
- 3. Qual è il modo migliore per rimuovere lo sfondo del video html5 per gli utenti mobili
- 4. gtk visualizzazione di una finestra di dialogo all'interno di una finestra di dialogo
- 5. Qual è il modo più discreto per implementare una finestra di dialogo personalizzata "pre-caricamento"?
- 6. Qual è la migliore pratica per aggiungere la visualizzazione di sfondo del video?
- 7. Finestra di dialogo Winform con finestra WPF come genitore
- 8. Qual è il modo più comune per creare una finestra di dialogo per la selezione di cartelle usando Delphi?
- 9. finestra di dialogo delle proprietà di connessione winform per la stringa di configurazione
- 10. Qual è la differenza tra windowBackground e lo sfondo per lo stile di attività?
- 11. sfondo finestra di dialogo personalizzata Android
- 12. Qual è lo stile di codifica migliore?
- 13. Impostare il colore di sfondo per la barra del titolo della finestra di dialogo?
- 14. Qual è il modo migliore per costruire il modello di visualizzazione?
- 15. Come ottenere il colore di sfondo di una finestra di dialogo/finestra?
- 16. finestra di dialogo sfondo bianco sotto allarme
- 17. Qual è il modo migliore per tracciare l'esecuzione di JavaScript?
- 18. Qual è il modo migliore per affermare l'uguaglianza di numpy.array?
- 19. MVC3: Qual è il modo migliore per ottenere il percorso di visualizzazione da un oggetto HtmlHelper?
- 20. Qual è il modo migliore in Delphi per mostrare finestre di dialogo personalizzate?
- 21. Animazione di una finestra di dialogo personalizzata
- 22. Qual è il modo migliore per comunicare tra i controller di visualizzazione?
- 23. Qual è il modo migliore per verificare se la vista è visibile sulla finestra?
- 24. Qual è il modo migliore per collegare/sincronizzare i modelli di visualizzazione in Knockout?
- 25. Qual è lo scopo di Console.WriteLine() in Winform
- 26. Qual è il modo migliore per visualizzare insiemi di dati di grandi dimensioni in QT
- 27. Qual è il modo migliore per autorizzare una chiavetta USB
- 28. Che cos'è un buon colore di sfondo predefinito per una finestra di dialogo WPF?
- 29. Qual è il modo migliore per svuotare una directory?
- 30. Qual è il modo migliore per reimparare una lingua?
+1: Questo è un approccio più facile che la mia, in quanto non richiede controlli sottoclasse. –
Soluzione molto bella. Anche se, devo dire "l'utente non avrà mai problemi a riconoscere che una finestra sovrapposta a una finestra di dialogo è disabilitata" potrebbe dare troppo credito ad alcuni utenti. ;) – stout
Ottima soluzione. Ma su un lato negativo, poiché una forma aggiuntiva è sovrapposta al modulo esistente, l'elemento attivo può essere sia sul modulo overlay che sul modulo padre. Questo non è l'ideale Voglio dire, non sembra che si sia formato un overlay sul modulo esistente, ma due forme sono aperte. Può esserci qualche logica per renderlo ideale? – nawfal