Recentemente, JavaFX ha introdotto Avvisi (Java 8u40).Avvisi JavaFX e loro dimensione
Considerare l'esempio di codice riportato di seguito. Come posso visualizzare un messaggio completo che è più lungo di poche parole? I miei messaggi (contentText
proprietà) vengono tagliati alla fine con ...
e l'avviso non regola le sue dimensioni correttamente secondo me.
Sulla mia macchina Linux con Oracle JDK 8u40, vedo solo il testo This is a long text. Lorem ipsum dolor sit amet
, che in alcuni casi è troppo breve.
Ovviamente, l'utente può ridimensionare manualmente la finestra di avviso e il testo verrà visualizzato di conseguenza, ma non è affatto user-friendly.
Edit: Screenshots per Windows 7 e Linux (JDK da Oracle):
import javafx.application.Application;
import javafx.scene.control.Alert;
import javafx.scene.control.Alert.AlertType;
import javafx.stage.Stage;
public class TestAlert extends Application {
public static void main(String[] args) {
launch(args);
}
@Override
public void start(Stage primaryStage) throws Exception {
Alert a = new Alert(AlertType.INFORMATION);
a.setTitle("My Title");
a.setHeaderText("My Header Text");
a.setResizable(true);
String version = System.getProperty("java.version");
String content = String.format("Java: %s.\nThis is a long text. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.", version);
a.setContentText(content);
a.showAndWait();
}
}
Questo problema sembra risolvere quello che stai vedendo: https://bugs.openjdk.java.net/browse/JDK-8095777. Si suppone che sia stato risolto in 8u40, tuttavia, vedo ancora il problema su CentOS con 8u45. –
Il bug è ancora presente in java8u66 oracle linux (non openjdk). –
Vedere anche: https://stackoverflow.com/q/33318661/179864 – aditsu