Mi piacerebbe avere un'applicazione in cui ho completamente personalizzato l'aspetto della finestra. Finora ho imparato che posso rimuovere la roba tipica finestra con:JavaFX interamente personalizzato Windows?
class Application extends javafx.application.Application {
/**
* Starts the application.
*
* @param stage
*/
override def start(stage: Stage) {
stage.initStyle(StageStyle.TRANSPARENT)
// Load the main window view.
val loader = new FXMLLoader()
loader.setLocation(getClass.getResource("/com/myproj/application/MainWindow.fxml"))
val root = loader.load().asInstanceOf[Parent]
val scene: Scene = new Scene(root, Color.TRANSPARENT)
stage.setScene(scene)
stage.show()
}
}
tutto il resto funziona bene, tranne quella finestra trascinamento, fare doppio click-to-massimizzare, trascinando a schermo bordo superiore su Windows dovrebbe attiva massimizzare, ecc. Le funzionalità native Window sono completamente mancanti.
Posso in qualche modo piuttosto facilmente personalizzare l'intero aspetto della finestra senza perdere tutte queste belle funzionalità.
Sto parlando di qualcosa di simile ad Adobe Photoshop che sembra completamente diverso ma conserva ancora queste funzionalità (o le implementa sulla loro interfaccia utente manualmente).
Sarebbe un inizio se potessi almeno implementare i pulsanti di trascinamento + finestra per gli avviatori. Mi sto occupando di Linux, Mac e Windows qui.
Aggiunta se non si desidera utilizzare il decespugliatore [Sample Custom Decorator] (https://gist.github.com/JaDogg/4d9999ba233f4a43b7c5) –