Swing JOptionPane.showOptionDialog - Wie kann ich Buttons größer machen

osix

Bekanntes Mitglied
Hallo Freunde,

Java:
int auswahl= JOptionPane.showOptionDialog(null,willkommen,"Testprogamm",
                     JOptionPane.YES_NO_CANCEL_OPTION,
                     JOptionPane.INFORMATION_MESSAGE, null,
                     new String[]{"A", "B"}, null); // keine Vorauswahl

Wie kann ich die Auswahlbuttons größer machen ?

Die Pane habe ich so größer gemacht und die Schrift auch

Java:
        msg0 ="<HTML>Willkommen</HTML>";
        willkommen = new JLabel(msg0);
        willkommen.setFont(new Font("Arial", Font.PLAIN, 24));
 

mihe7

Top Contributor
Natürlich geht das, aber nicht so. Vorab wäre die Frage, was genau passieren soll und warum nur die Buttons von JOptionPane betroffen sein sollen und nicht alle Buttons gleichermaßen?
 

osix

Bekanntes Mitglied
Natürlich geht das, aber nicht so. Vorab wäre die Frage, was genau passieren soll und warum nur die Buttons von JOptionPane betroffen sein sollen und nicht alle Buttons gleichermaßen?

Danke für deine Antwort !

Es können gerne ALLE Buttons gleichmassen betroffen sein.

Die Buttons und die Schrift sollen größer werden, weil auch die Schrift auf der JOptionPane größer ist.

Es geht um eine Java Applikation, die von Senioren bedient werden soll, und da ist die Vorgabe, daß Schrift und Buttons größer sein sollen !

Jetzt bin ich gespannt, wie man das macht....
 
K

kneitzel

Gast
Ich habe es jetzt nicht ausprobiert, aber ich würde erwarten, dass die Java Applikation sich auch nach den System Standards richtet.

Und wenn ein Benutzer ein Scling wünscht, dann wird er es ja für alle Programme und das System wünschen. Und daher wird er es im System einstellen und nicht bei jedem Programm dieses einstellen wollen (Was auch schwierig ist, denn oft sind nur einzelne Komponenten änderbar und vieles kommt vom System. Schriftgröße im Menü ist eine typische Einstellung, die vom System kommt....

Daher ist meine Frage erst einmal, wieso es nicht beim System eingestellt wird...

Und statt die festen Dialoge der JOptionPane zu nutzen könntest Du die jederzeit nachbauen und dann könntest Du die Elemente in der Größe haben, die Du willst. Aber das macht aus meiner Sicht wenig Sinn... Ich empfehle ganz klar das Scling des Systems zu nutzen, damit man das System und alle Programme sinnvoll nutzen kann. Alles andere ist schlicht problematisch...
 

osix

Bekanntes Mitglied
Ne, in Windows kann ich das nicht umstellen, es soll nur EINE Anwendung sein, wo Schrift und Buttons eben größer sein müssen.
Alles andere soll so bleiben...

Die JOptionPane will ich nicht "nachbauen".

Kann man die Buttongröße der JOptionPane jetzt verändern oder geht das doch nicht direkt in der JOptionPane ?

ist dann komisch, denn die Schriftgröße KONNTE ich ja über den JLabel verändern !
 

mihe7

Top Contributor
Es geht um eine Java Applikation, die von Senioren bedient werden soll, und da ist die Vorgabe, daß Schrift und Buttons größer sein sollen !

Jetzt bin ich gespannt, wie man das macht....
Auf die Gefahr, dass Du gleich aus dem Fenster springst, weil Du bislang überall per Hand die Schrift angepasst hast: das ist in Swing relativ einfach :) Allerdings abhängig vom verwendeten Look & Feel.

In Nimbus kannst Du eine Standardschrift für die Anwendung einstellen. In Metal & Co. geht das je Komponente, hier mal die Keys:
Code:
MenuBar.font
ScrollPane.font
ToolTip.font
MenuItem.acceleratorFont
ColorChooser.font
ToolBar.font
FormattedTextField.font
Viewport.font
TitledBorder.font
InternalFrame.titleFont
MenuItem.font
Slider.font
TabbedPane.font
ProgressBar.font
TextField.font
Tree.font
PopupMenu.font
CheckBox.font
RadioButtonMenuItem.font
List.font
EditorPane.font
Menu.acceleratorFont
ToggleButton.font
DesktopIcon.font
TextArea.font
RadioButton.font
Menu.font
RadioButtonMenuItem.acceleratorFont
Spinner.font
TableHeader.font
TextPane.font
PasswordField.font
CheckBoxMenuItem.acceleratorFont
OptionPane.font
Button.font
Panel.font
Table.font
CheckBoxMenuItem.font
ComboBox.font
Label.font

Wenn Du also die Schrift für alle Buttons anpassen willst, setzt Du die jeweilige Property, bevor Du das UI erstellst, z. B.:
Java:
Font largeButtonFont = UIManager.get("Button.font").deriveFont(28f);
UIManager.put("Button.font", largeButtonFont);
 
K

kneitzel

Gast
Ich muss gestehen, dass meine Erwartungshaltung hier gewesen wäre, dass die Controls dann zu klein werden für die Schrift. Aber die JOptionPane passt die Größe der Controls entsprechend an.

Der Code so ist aber nicht ausführbar, da UIManager.get ein Object zurück gibt. Aber mit einem Cast zu Font läuft es natürlich.
 

osix

Bekanntes Mitglied
Ok, danke, daß es mal konkret wird mit Quelltext.

Aber im "normalen Swing" kann ich das nicht umstellen, oder ? Nur im anderen Look & Feel Modus ?
 
K

kneitzel

Gast
Das ist normales Swing. Du musst kein Look & Feel Modus setzen um das zu nutzen.
Der UIManager ist immer hinterlegt und aktiv. Nur eben kannst Du mit dem auch direkt viele Settings vom System übernehmen....

Also sowas funktioniert problemlos:
Java:
import javax.swing.*;
import java.awt.*;

public class SwingTest {
    public static void main(String[] args) {
        Font largeFont = ((Font)UIManager.get("Button.font")).deriveFont(28f);
        UIManager.put("Button.font", largeFont);
        UIManager.put("Label.font", largeFont);
        UIManager.put("TextField.font", largeFont);
        JOptionPane.showInputDialog("Just a test!");
    }
}
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
G JOptionPane zeigt nicht an was ich will AWT, Swing, JavaFX & SWT 2
A JOptionPane OK ohne Eingabe abfangen AWT, Swing, JavaFX & SWT 10
senol JOptionPane hilfe!!! :(((( AWT, Swing, JavaFX & SWT 32
J JOptionPane ruft sich selbst immer wieder neu auf AWT, Swing, JavaFX & SWT 3
J JOptionPane return bei "Abbrechen" AWT, Swing, JavaFX & SWT 13
R JOptionPane schließt sich nicht wieder AWT, Swing, JavaFX & SWT 2
O Timer in JOptionPane anzeigen AWT, Swing, JavaFX & SWT 2
Z Swing JOptionPane import AWT, Swing, JavaFX & SWT 5
R Swing JOptionPane Sprache Ändern AWT, Swing, JavaFX & SWT 4
O JOptionPane mit JFileDialog AWT, Swing, JavaFX & SWT 5
dereki2000 JPanel mit Rückgbe wie bei JOptionPane AWT, Swing, JavaFX & SWT 3
T JavaFX JFrame verhalten wie JOptionPane (ErrorMessage) AWT, Swing, JavaFX & SWT 1
I JOptionPane maximale Zeichen einstellen AWT, Swing, JavaFX & SWT 2
N Swing Mocken von JOptionPane im JUnit-Test AWT, Swing, JavaFX & SWT 3
R Ausgabe über JOptionPane.showMessageDialog funktioniert nicht AWT, Swing, JavaFX & SWT 2
W JOptionPane AWT, Swing, JavaFX & SWT 1
T JOptionPane Dialog plus Rechnung ausgeben AWT, Swing, JavaFX & SWT 1
snipesss Hintergrundbild in JOptionPane.showInputDialog? AWT, Swing, JavaFX & SWT 4
R Swing JOptionPane Fehlermeldung- bitte um Hilfe! AWT, Swing, JavaFX & SWT 4
J Event Handling JOptionPane ActionListener setzen. AWT, Swing, JavaFX & SWT 3
A Swing JOptionPane.showConfirmDialog, EventQueue wird weiter abgearbeitet AWT, Swing, JavaFX & SWT 2
C JOptionPane.showConfirmDialog() -> Focus auf NEIN -> Enter gibt YES_OPTION zurück AWT, Swing, JavaFX & SWT 6
T JOptionPane Enter = Okay AWT, Swing, JavaFX & SWT 3
OnDemand JOptionPane AWT, Swing, JavaFX & SWT 2
B JFrame wie JOptionPane.showMessageDialog() AWT, Swing, JavaFX & SWT 2
D Swing JOptionPane verschwindet beim 2. Aufruf einfach so?? AWT, Swing, JavaFX & SWT 2
L Swing JOptionPane Verwirrung AWT, Swing, JavaFX & SWT 13
P JOptionPane input und show Message Dialog AWT, Swing, JavaFX & SWT 5
I javascript in javaprogramm JOptionpane -> haengt (embedded Interpreter) AWT, Swing, JavaFX & SWT 2
S JOptionPane sinnvoll benutzen AWT, Swing, JavaFX & SWT 7
J JOptionPane mit zwei Buttons?! AWT, Swing, JavaFX & SWT 3
D JOptionPane.QUESTION_MESSAGE Fett darstellen AWT, Swing, JavaFX & SWT 4
N JOptionPane als JWindow AWT, Swing, JavaFX & SWT 2
M Swing Änderungen eines TextFelds und JOptionPane AWT, Swing, JavaFX & SWT 5
O JOptionPane.showMessageDialog mit automatischem Zeilenumbruch AWT, Swing, JavaFX & SWT 9
E Swing setCaretPosition für ein JTextField in einem JOptionPane AWT, Swing, JavaFX & SWT 3
H Swing JOptionPane.showConfirmMessage() wird nicht angezeigt AWT, Swing, JavaFX & SWT 2
R JOptionPane.YES_NO_CANCEL_OPTION im SaveDialog verwenden AWT, Swing, JavaFX & SWT 6
U JFrame minimiert nach JDialog, JOptionPane AWT, Swing, JavaFX & SWT 3
R Eingegebenen Text in JOptionPane in andere Klasse weitergeben AWT, Swing, JavaFX & SWT 2
M JOptionPane.showInputDialog abbrechen abfangen? AWT, Swing, JavaFX & SWT 2
Weiti JOptionPane aus einer von JPanel abgeleiteten Klasse aufrufen AWT, Swing, JavaFX & SWT 3
N OK-Button in JOptionPane ansprechen AWT, Swing, JavaFX & SWT 5
D Swing JOptionPane + FileChooser .. Reihenfolge wichtig!? AWT, Swing, JavaFX & SWT 7
G Swing Meldung mit joptionpane information message AWT, Swing, JavaFX & SWT 22
B Swing JOptionPane ohne beep AWT, Swing, JavaFX & SWT 6
A Swing \t im JOptionPane AWT, Swing, JavaFX & SWT 2
G JOptionPane.showConfirmDialog size problem AWT, Swing, JavaFX & SWT 3
S JOptionPane - InitialValue AWT, Swing, JavaFX & SWT 9
S JOptionPane resultat kriegen AWT, Swing, JavaFX & SWT 7
ABstraCT JOptionPane setSize ? AWT, Swing, JavaFX & SWT 6
S JOptionPane.showInputDialog JList erzwingen? AWT, Swing, JavaFX & SWT 4
SebSnake JFrame "Focus" erzwingen (wie JOptionPane) AWT, Swing, JavaFX & SWT 3
G JOptionPane.showInputDialog(): Texteingabe und Fokus AWT, Swing, JavaFX & SWT 3
A Array wird im JOptionPane mehrfach ausgegeben AWT, Swing, JavaFX & SWT 3
A JOptionPane soll auf Enter reagieren AWT, Swing, JavaFX & SWT 4
F JOptionPane.showMessageDialog AWT, Swing, JavaFX & SWT 2
M JOptionPane.showMessageDialog() mit printStackTace() ? AWT, Swing, JavaFX & SWT 7
QDog JTabbedPane JOptionPane AWT, Swing, JavaFX & SWT 2
K Tabelle nach JOptionPane updaten AWT, Swing, JavaFX & SWT 5
A JOptionPane; CLOSED_OPTION ausschalten AWT, Swing, JavaFX & SWT 5
A Probleme mit einer JOptionPane in einem jar-File AWT, Swing, JavaFX & SWT 14
Z JOptionPane mit einer Methode in dem Vordergrund setzen? AWT, Swing, JavaFX & SWT 6
J JOptionPane Tabs AWT, Swing, JavaFX & SWT 3
G JOptionPane mit andere Farbe AWT, Swing, JavaFX & SWT 8
B Ein JOptionPane.showMessageDialog(.) AWT, Swing, JavaFX & SWT 6
G komplexes JOptionPane (oder doch JFrame?) AWT, Swing, JavaFX & SWT 2
G JOptionPane mit link zum anklicken AWT, Swing, JavaFX & SWT 4
G JOptionPane AWT, Swing, JavaFX & SWT 6
N Probleme mit eigenem JOptionPane AWT, Swing, JavaFX & SWT 2
A Schließen eines JOptionPane.showConfirmDialog AWT, Swing, JavaFX & SWT 6
B JOptionPane.showInputDialog mit drei ComboBoxen nebeneinande AWT, Swing, JavaFX & SWT 2
S JTextField und JOptionPane - Zeicheneingabe beschränken AWT, Swing, JavaFX & SWT 3
G JOptionPane AWT, Swing, JavaFX & SWT 3
eskimo328 JOptionPane ohne CANCEL Button AWT, Swing, JavaFX & SWT 2
M JOptionPane.showConfirmDialog. Frage zur Cancel_Option AWT, Swing, JavaFX & SWT 2
L JOptionPane AWT, Swing, JavaFX & SWT 4
P JComboBox.addItem erzeugt Layoutproblem mit JOptionPane AWT, Swing, JavaFX & SWT 2
J eigenes JOptionPane ? AWT, Swing, JavaFX & SWT 2
J JOptionPane Buttons AWT, Swing, JavaFX & SWT 4
G Eingabe auslesen mit JOptionPane AWT, Swing, JavaFX & SWT 2
vogella JOptionPane in den Vordergrund bringen AWT, Swing, JavaFX & SWT 2
padde479 JOptionPane AWT, Swing, JavaFX & SWT 3
C Probleme beim Serialisieren mit JOptionPane AWT, Swing, JavaFX & SWT 12
S JOptionPane: methode ShowConfirmDialog ist undefiniert AWT, Swing, JavaFX & SWT 2
S JOptionPane und eine feste Zeilenbreite. AWT, Swing, JavaFX & SWT 4
S JProgressBar zu JOptionPane hinzufügen. AWT, Swing, JavaFX & SWT 8
G JOptionPane AWT, Swing, JavaFX & SWT 3
B Eingabeüberprüfung beim JOptionPane.showInputDialog() AWT, Swing, JavaFX & SWT 3
D Mit JOptionPane einen Link darstellen AWT, Swing, JavaFX & SWT 10
S JOptionPane.showMessageDialog(.) AWT, Swing, JavaFX & SWT 23
S Ein frage zu JOptionPane AWT, Swing, JavaFX & SWT 2
H wie frage ich mehrere buttons von joptionpane ab AWT, Swing, JavaFX & SWT 4
G Link in JoptionPane? AWT, Swing, JavaFX & SWT 3
N JOptionPane mit Html Tags AWT, Swing, JavaFX & SWT 5
B Focus in JOptionPane AWT, Swing, JavaFX & SWT 2
M Ausgabe mit JOptionPane AWT, Swing, JavaFX & SWT 6
U kleiner-Zeichen JEditorPanel (war: JOptionPane) AWT, Swing, JavaFX & SWT 5
S JOptionPane in den Bildschirmvordergrund bringen AWT, Swing, JavaFX & SWT 3
F JOptionPane soll nicht auf ENTER reagieren AWT, Swing, JavaFX & SWT 8

Ähnliche Java Themen

Neue Themen


Oben