Tip Of Day Dialog : JOptionPane Dialog « Swing « Java Tutorial






import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.Frame;
import java.awt.event.KeyEvent;

import javax.swing.BorderFactory;
import javax.swing.BoxLayout;
import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JDialog;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JSeparator;
import javax.swing.JTextPane;

public class TipOfDay {
  public static void main(String[] args) {
    JDialog d = new JDialog((Frame)null,"Tip of the Day");

    JPanel basic = new JPanel();
    basic.setLayout(new BoxLayout(basic, BoxLayout.Y_AXIS));
    d.add(basic);

    JPanel topPanel = new JPanel(new BorderLayout(0, 0));
    topPanel.setMaximumSize(new Dimension(450, 0));
    JLabel hint = new JLabel("This is the tip");
    hint.setBorder(BorderFactory.createEmptyBorder(10, 25, 10, 10));
    topPanel.add(hint);

    JSeparator separator = new JSeparator();
    separator.setForeground(Color.gray);

    topPanel.add(separator, BorderLayout.SOUTH);

    basic.add(topPanel);

    JPanel textPanel = new JPanel(new BorderLayout());
    textPanel.setBorder(BorderFactory.createEmptyBorder(15, 25, 15, 25));
    JTextPane pane = new JTextPane();

    pane.setContentType("text/html");
    String text = "<paragraph><b>Content</b></paragraph>";
    pane.setText(text);
    pane.setEditable(false);
    textPanel.add(new JScrollPane(pane));

    basic.add(textPanel);

    JPanel boxPanel = new JPanel(new FlowLayout(FlowLayout.LEFT, 20, 0));

    JCheckBox box = new JCheckBox("Show Tips at startup");
    box.setMnemonic(KeyEvent.VK_S);

    boxPanel.add(box);
    basic.add(boxPanel);

    JPanel bottom = new JPanel(new FlowLayout(FlowLayout.RIGHT));

    JButton ntip = new JButton("Next Tip");
    ntip.setMnemonic(KeyEvent.VK_N);
    JButton close = new JButton("Close");
    close.setMnemonic(KeyEvent.VK_C);

    bottom.add(ntip);
    bottom.add(close);
    basic.add(bottom);

    bottom.setMaximumSize(new Dimension(450, 0));

    d.setSize(new Dimension(450, 350));
    d.setResizable(false);
    d.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
    d.setVisible(true);
  }
}








14.56.JOptionPane Dialog
14.56.1.Creating a JOptionPane
14.56.2.The JOptionPane Message Argument is an Object, not a String.
14.56.3.The JOptionPane Message Type and Icon Arguments
14.56.4.The JOptionPane Option Type Argument
14.56.5.The JOptionPane Options and Initial Value Arguments
14.56.6.JOptionPane Option Position Constants
14.56.7.Using JOptionPane to Display a Message
14.56.8.Using JOptionPane to Prompt User Confirmation
14.56.9.Using JOptionPane to prompt user confirmation: a demoUsing JOptionPane to prompt user confirmation: a demo
14.56.10.Using JOptionPane to Obtain User Input
14.56.11.Using JOptionPane with a predefined selectionsUsing JOptionPane with a predefined selections
14.56.12.Display JOptionPane
14.56.13.JOptionPane Utility Class: Get selection from JOptionPaneJOptionPane Utility Class: Get selection from JOptionPane
14.56.14.Message Pop-UpsMessage Pop-Ups
14.56.15.Confirm Pop-UpsConfirm Pop-Ups
14.56.16.Input Pop-UpsInput Pop-Ups
14.56.17.Big value list for JOptionInput DialogBig value list for JOptionInput Dialog
14.56.18.Option Pop-UpsOption Pop-Ups
14.56.19.String Array Option PopupsString Array Option Popups
14.56.20.Complex message argumentsComplex message arguments
14.56.21.Adding Components to the Button Area: Using JOptionPane with a JButton containing a text label and an iconAdding Components to the Button Area: Using JOptionPane with a JButton containing a text label and an icon
14.56.22.Sample JOptionPane in a JDialogSample JOptionPane in a JDialog
14.56.23.Instant Input DialogsInstant Input Dialogs
14.56.24.JOptionPane WARNING_MESSAGEJOptionPane WARNING_MESSAGE
14.56.25.Dialog without parent componentDialog without parent component
14.56.26.To displays a dialog with a list of choices in a drop-down list boxTo displays a dialog with a list of choices in a drop-down list box
14.56.27.Understanding the Message PropertyUnderstanding the Message Property
14.56.28.Using JOptionPane with a JSliderUsing JOptionPane with a JSlider
14.56.29.Displaying Multiline MessagesDisplaying Multiline Messages
14.56.30.Setting JOptionPane button labels to FrenchSetting JOptionPane button labels to French
14.56.31.Tip Of Day Dialog
14.56.32.About dialogAbout dialog
14.56.33.Create a Confirm Dialog Box
14.56.34.Create a Message Dialog Box
14.56.35.Yes no cancel dialog
14.56.36.OK cancel option dialog
14.56.37.Dialog with default options
14.56.38.Customize JOptionPane buttons
14.56.39.Modal dialog with yes/no button
14.56.40.Modal dialog with OK/cancel and a text field
14.56.41.Wait for a click and then quit
14.56.42.Localize a JOptionPane dialog
14.56.43.Modifiable JOptionPane
14.56.44.Customizing a JOptionPane Look and Feel