Diskuze: JavaFX - neviditelné okno

Java Java JavaFX - neviditelné okno

Avatar
Tomáš Brůna
Redaktor
Avatar
Tomáš Brůna:

Ahoj zajímalo by mě jak se dá v JavaFX zneviditelnit okno. Předem děkuji za rady :)

Odpovědět 18.5.2015 17:18
Lepší být šprt než blbec :)
Avatar
Odpovídá na Tomáš Brůna
Petr Štechmüller:

Ahoj, pokud chceš mít okno neviditelné, tak stačí napsat do metody kde vytváříš okno toto:

stage.initStyle(StageStyle.TRANSPARENT);
final Scene scene = new Scene(new Pane(),300, 250);
scene.setFill(null);
stage.setScene(scene);
stage.show();

Výsledkem bude absolutně neviditelné okno.

Nahoru Odpovědět  +1 18.5.2015 17:28
Pokud spolu kód a komentář nekorespondují, budou patrně oba chybné
Avatar
Tomáš Brůna
Redaktor
Avatar
Odpovídá na Petr Štechmüller
Tomáš Brůna:

s jak se dá ještě skrýt pozadí aplikace? děkuji :)

Nahoru Odpovědět 18.5.2015 17:47
Lepší být šprt než blbec :)
Avatar
Odpovídá na Tomáš Brůna
Petr Štechmüller:

Tobě se zobrazuje pozadí? Když jsem si to zkoušel, tak se mi nezobrazilo nic. Pošli sem kód kde vytváříš okno.

Nahoru Odpovědět 18.5.2015 17:58
Pokud spolu kód a komentář nekorespondují, budou patrně oba chybné
Avatar
Tomáš Brůna
Redaktor
Avatar
Odpovídá na Petr Štechmüller
Tomáš Brůna:

už to funguje ale nevím jak do toho vložit tlačítka

Nahoru Odpovědět 18.5.2015 18:04
Lepší být šprt než blbec :)
Avatar
Tomáš Brůna
Redaktor
Avatar
Odpovídá na Petr Štechmüller
Tomáš Brůna:

tak se mi podařil zneviditelnit rámeček, tlačítka jsou vidět ale je okolo nich šedý čtverec a ten potřebuji odstranit

Nahoru Odpovědět 18.5.2015 18:15
Lepší být šprt než blbec :)
Avatar
Odpovídá na Tomáš Brůna
Petr Štechmüller:

Musíš dát tlačítku styl. Ukážu Ti to na příkladu:

Button btn = new Button("průhledné tlačítko");
btn.setStyle("-fx-background-color: transparent");

Tím -fx-background-color nastavíš tlačítku, že má mít průhledné pozadí.

Editováno 18.5.2015 18:24
Nahoru Odpovědět 18.5.2015 18:23
Pokud spolu kód a komentář nekorespondují, budou patrně oba chybné
Avatar
Tomáš Brůna
Redaktor
Avatar
Odpovídá na Petr Štechmüller
Tomáš Brůna:

po použití:

stage.initStyle(StageStyle.TRANSPARENT);
final Scene scene = new Scene(new Pane(),300, 250);
scene.setFill(null);
stage.setScene(scene);
stage.show();

zmizí vše a když přídám tlačítka

 IT.setText("itnetwork.cz");                // nastavení popisku (textu)
       IT.setOnAction((ActionEvent e) -> {
try { nastav.itnet(); }catch (URISyntaxException ex){Logger.getLogger(Tlacitka.class.getName()).log(Level.SEVERE, null, ex);} catch (IOException ex) {  Logger.getLogger(Tlacitka.class.getName()).log(Level.SEVERE, null, ex);
}
});

tak se přidá tlačítko normálně jak potřebuju ale znovu se zobrazí pozadí aplikace
a to potřebuju odstranit

Nahoru Odpovědět 18.5.2015 18:46
Lepší být šprt než blbec :)
Avatar
Odpovídá na Tomáš Brůna
Petr Štechmüller:

Ahoj, tak už jsem našel řešení, sice se zpožděním ale přece. Musíš layoutu (Pane/Vbox/Cokoliv jiného) nastavit pozadí na empty. Radši Ti to ukážu na příkladu:

stage.initStyle(StageStyle.TRANSPARENT);
        Button btn = new Button("průhledné tlačítko");
        btn.setStyle("-fx-background-color: transparent");
        Text text = new Text("Transparent!");
        text.setFont(new Font(40));
        VBox box = new VBox(btn);
//        Tento řádek přidej
        box.setBackground(Background.EMPTY);
        final Scene scene = new Scene(box,300, 250);
        scene.setFill(null);
        stage.setScene(scene);
        stage.show();
Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
Nahoru Odpovědět  +1 19.5.2015 12:21
Pokud spolu kód a komentář nekorespondují, budou patrně oba chybné
Avatar
Tomáš Brůna
Redaktor
Avatar
Nahoru Odpovědět 21.5.2015 18:13
Lepší být šprt než blbec :)
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 10 zpráv z 10.