使用showOptionDialog显示多项选择框
-----------------siwuxie095
工程名:TestJOptionPane
包名:com.siwuxie095.showdialog
类名:TestOptionDialog.java
工程结构目录如下:
代码:
package com.siwuxie095.showdialog; import java.awt.BorderLayout; import java.awt.EventQueue; import javax.swing.JFrame; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.UIManager; import javax.swing.UnsupportedLookAndFeelException; import javax.swing.border.EmptyBorder; import com.sun.java.swing.plaf.windows.WindowsLookAndFeel; import com.sun.org.apache.xerces.internal.impl.xs.SchemaSymbols; import javax.swing.JButton; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; public class TestOptionDialog extends JFrame { private JPanel contentPane; /** * Launch the application. */ public static EventQueue.invokeLater(new Runnable() { public try { TestOptionDialog frame = new TestOptionDialog(); frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } }); } /** * Create the frame. */ public TestOptionDialog() {
try { UIManager.setLookAndFeel(new WindowsLookAndFeel()); } catch (UnsupportedLookAndFeelException e) { e.printStackTrace(); }
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setBounds(100, 100, 450, 300); contentPane = new JPanel(); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); contentPane.setLayout(new BorderLayout(0, 0)); setContentPane(contentPane);
JButton btnshowoptiondialog = new JButton("显示多项选择框(showOptionDialog)");
//为 btnshowoptiondialog.addMouseListener(new MouseAdapter() { @Override public
/** * 直接通过静态方法调用 * 需要指定父级窗体,信息,标题,选项类型, * 信息类型,图标,可选值(数组),初始值(默认输入值) * 返回值是 int 类型,创建以接收返回值 ,对应 "方案1" ... * 如果返回 CLOSED_OPTION,则该窗口关闭,没有选择 * 没有关闭多项选择框时,后面的主窗体是完全无法操作的(即 */ String options[]={"方案1","方案2","方案3"}; int value=JOptionPane.showOptionDialog(TestOptionDialog.this, "选择一个方案:", "方案", JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE, null, options, "方案1");
if (value!=JOptionPane.CLOSED_OPTION) { switch (value) { case case case default: break; } }
} }); btnshowoptiondialog.setFocusable(false); contentPane.add(btnshowoptiondialog, BorderLayout.NORTH); } } |
将窗体
JFrame 的 LookAndFeel 设定为 Windows
在根面板 contentPane 的上方添加一个 JButton,
将其 focusable 属性设为
false
为 JButton 添加 mouseClicked 事件,点击 按钮 弹出多项选择框
运行程序:
【made by siwuxie095】
使用showOptionDialog显示多项选择框的更多相关文章
- 【代码笔记】iOS-单项选择框
一,效果图. 二,工程图. 三,代码. RootViewController.h #import <UIKit/UIKit.h> @interface RootViewController ...
- C# 复选框显示多项选择
private void Form1_Load(object sender, EventArgs e) { checkedListBox1.Items.Add("语文"); che ...
- MVC中下拉框显示枚举项
原文:MVC中下拉框显示枚举项 本篇将通过3种方式,把枚举项上的自定义属性填充到下拉框: 1.通过控制器返回List<SelectListItem>类型给前台视图 2.通过为枚举类型属性打 ...
- Unity编辑器扩展Texture显示选择框
学习NGUI插件的时候,突然间有一个问题为什么它这些属性可以通过弹出窗口来选中呢? 而我自己写的组件只能使用手动拖放的方式=.=. Unity开发了组件Inspector视图扩展API,如果我们要写插 ...
- 百度编辑器UEditor 点击上传图片选择框会延迟几秒才会显示 反应很慢(转)
转自:http://www.blogxuan.com/php/show/323.html UEditor 编辑器点击上传文件选择框会延迟几秒才会显示,反应很慢,上传图片选择框显示很慢. 1.uedit ...
- 修改页面中显示出需要修改的数据(包括select选择框复显示)
页面中需要用到某个对象时,在底层代码中赋值,然后页面用java代码进行获取调用 如下截图: select复显示:根据后台方法赋值选择框 ,并设置初始值 按钮及选择框的禁用(五种方法): 方法一: $( ...
- bootstrap 左右框多项选择示例
bootstrap 左右选择框,左边框是未选项,右边框是已选择项,提供单选,全选按钮,以及取消已选项,如图示:
- dojo:如何显示ListBox风格的选择框
常见的选择框控件:Selelct.FilteringSelect和ComboBox都是下拉框风格,而不是ListBox风格. dojo还提供了一个dijit.form.MultiSelect控件可以解 ...
- layui下拉选择框select不显示
弹层layer下拉框没有样式_不可点击_没有效果_渲染失效的解决办法 一.必须给表单体系所在的父元素加上 class="layui-form" 在一个容器中设定 class=&qu ...
随机推荐
- JQuery 双击动态编辑
$(this).append(input); $("input#temp").focus(); $("inp ...
- iOS 基本数据类型 和 指针 特点
基本数据类型 : 整型int, 字符型char , 浮点型 (float 和 double), 枚举型; -- 构造类型 : 数组类型, 结构体类型, 共用体类型; -- 指针类型 : 最终要的数据类 ...
- 第二十四篇、socketserver源码剖析
这里选择的是python2.7(python3和2.7的源码基本类似) #!/usr/bin/env python # -*- coding:utf-8 -*- import SocketServer ...
- O(1) 快速乘
有一些毒瘤题,数据大小不光会炸\(int\),有时甚至会炸\(long long\).这时一个\(O(1)\)的防爆乘就很重要了 \(a*b%p\)可以转化为\(a*b-[a*b/p]*p\) 这里用 ...
- 句柄与MFC对象关系和相互获取
Windows对象是以句柄来标识的,对应的MFC类就是这些句柄的C++包装.内存中的Windows对象一定有唯一的句柄来标识,但不一定有对应的MFC类对象在内存中.当需要获取Windows对象的对应M ...
- SQL truncate 、delete与drop区别及 MSSQL、MySQL 数据库删除大批量千万级百万级数据的优化
C#_Stopwatch 类 http://www.cnblogs.com/zhw511006/archive/2009/07/22/1528405.html http://blog.csdn.net ...
- jsp学习(3)
1.model模式 2.model1.x分层模式 3.mvc模式(model2) model2的具体体现就是mvc. dao:就是data access object数据访问对象,即专门对数据库进行操 ...
- jquery插件之jquery.extend和jquery.fn.extend的区别
jquery.extend jquery.extend(),是拓展jquery这个类,即可以看作是jquery这个类本身的静态方法,例如: <!DOCTYPE html> <html ...
- Linux课程---7、shell技巧(获取帮助命令)
Linux课程---7.shell技巧(获取帮助命令) 一.总结 一句话总结: ls --help:简单手册 man ls:内容手册 1.tab补全? 命令+tab:加快敲命令敲文件目录的速度,多敲几 ...
- Linux课程---3、Linux远程登录和传输(操作Linux服务器软件)
Linux课程---3.Linux远程登录和传输(操作Linux服务器软件) 一.总结 一句话总结: xshell:Xshell是一个强大的安全终端模拟软件 Xshell是一个强大的安全终端模拟软件, ...