JOptionPane Resources : ResourceBundle « I18N « Java Tutorial






import java.awt.Font;
import java.awt.GraphicsEnvironment;
import java.util.Locale;
import java.util.ResourceBundle;

import javax.swing.JDialog;
import javax.swing.JOptionPane;

public class JOptionPaneDemonstrationLocalized {

  public static void main(String[] argv) {

    GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
    Font unicodeFont = new Font("LucidaSans", Font.PLAIN, 12);

    ResourceBundle bundle = ResourceBundle.getBundle("JOptionPaneResources",
        Locale.getDefault());

    String[] textMessages = new String[3];
    textMessages[0] = bundle.getString("Yes");
    textMessages[1] = bundle.getString("No");
    textMessages[2] = bundle.getString("Cancel");

    JOptionPane jop = new JOptionPane(bundle.getString("MessageText"),
        JOptionPane.ERROR_MESSAGE, JOptionPane.YES_NO_CANCEL_OPTION, null,
        textMessages);
    JDialog jopDialog = jop.createDialog(null, bundle.getString("TitleText"));
    jop.setFont(unicodeFont);
    jopDialog.setVisible(true);
    Object userSelection = jop.getValue();
  }
}

# JOptionPane text resources in Hebrew
#
Yes=\u05db\u05df
No=\u05dc\u05d0
OK=\u05d0\u05d9\u05e9\u05d5\u05e8
Cancel=\u05d1\u05d9\u05d8\u05d5\u05dc
MessageText=\u05d6\u05d0\u05ea \u05d4\u05d5\u05d3\u05e2\u05d4
TitleText=\u05d6\u05d0\u05ea \u05db\u05d5\u05ea\u05e8\u05ea








13.4.ResourceBundle
13.4.1.File name for java.util.ResourceBundle
13.4.2.Load resources via a resources file
13.4.3.Reading Properties Files using ResourceBundle
13.4.4.Convert ResourceBundle to Properties
13.4.5.Convert ResourceBundle to Map
13.4.6.An Internationalized Swing Application
13.4.7.JOptionPane Resources
13.4.8.Using the JDK 6 ResourceBundle class
13.4.9.Displaying Calendar Names
13.4.10.Customizing Resource Bundle Loading
13.4.11.XML resource bundle
13.4.12.Get resource bundle for a certain locale
13.4.13.Java file based resource bundle
13.4.14.ResourceBundle: avoid a performance penalty by superfluous resource (and classes loaded by Class.forName) lookups on web server in applets.