package windows;

import java.awt.BorderLayout;

import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JRadioButton;
import javax.swing.JTextArea;
import javax.swing.JTextField; public class CommonComponent extends JFrame {
public CommonComponent() { // 面板
JPanel p1 = new JPanel();
add(p1); // 标签
JLabel name = new JLabel("用户名:");
p1.add(name); // 文本域
JTextField field = new JTextField(8);
p1.add(field); // 标签
JLabel passwd = new JLabel("密码");
p1.add(passwd);
// 密码域
JPasswordField pass = new JPasswordField(8);
p1.add(pass); // 单选按钮
JLabel gender = new JLabel("性别");
p1.add(gender);
JRadioButton male = new JRadioButton("男");
JRadioButton female = new JRadioButton("女");
// 单选按钮组,同一个单选按钮组的互斥.
ButtonGroup group = new ButtonGroup();
group.add(male);
group.add(female);
// 注意,单选按钮组不能添加进容器
p1.add(male);
p1.add(female); // 复选框
JLabel like = new JLabel("爱好:");
p1.add(like);
JCheckBox eat = new JCheckBox("吃饭");
JCheckBox movie = new JCheckBox("看电影");
JCheckBox sleep = new JCheckBox("睡觉");
p1.add(eat);
p1.add(movie);
p1.add(sleep); // 文本域
JLabel info = new JLabel("个人简介");
p1.add(info);
JTextArea area = new JTextArea(20, 20);
p1.add(area); // 列表
String[] data = { "one", "two", "three" };
JList list = new JList(data);
p1.add(list); // 普通按钮
JButton button = new JButton("注册");
p1.add(button); // 菜单条
JMenuBar bar = new JMenuBar();
// 菜单
JMenu menu = new JMenu("文件");
// 菜单选项
JMenuItem myNew = new JMenuItem("新建");
JMenuItem myOpen = new JMenuItem("打开");
bar.add(menu);
menu.add(myNew);
menu.add(myOpen);
add(bar, BorderLayout.NORTH); } public static void main(String[] args) {
CommonComponent frame = new CommonComponent();
frame.setTitle("常用组件");
frame.setSize(400, 400);
frame.setLocationRelativeTo(null);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// 自适应
frame.pack();
frame.setVisible(true);
}
}

最近迷上了GUI的更多相关文章

  1. 在OSX和Windows版本Docker上运行GUI程序

    看到很多人在Docker问题区讨论:如何在OS X和Windows的Docker上运行GUI程序, 随手记录几个参考资料: https://github.com/docker/docker/issue ...

  2. 迷上我成真恋爱学心理学挽回她PDF文档资料完整版情感技巧脱单教程

    迷上我成真恋爱学心理学挽回她PDF文档资料完整版情感技巧脱单教程 成真迷上我偷听女人心挽回她课程 百度网盘迷上我教程pdf地址 百度网盘挽回她教程pdf+视频的地址 备用地址淘宝百度网盘发货地址 百度 ...

  3. 在SSH里面远程启动ubuntu上的GUI程序

    由于嵌入式开发板上是ubuntu系统,开发板接有显示器,现有一GUI程序需要在开发板显示器上实时显示,开发板与本地通过网络SSH连接,正常情况执行如:firefox,那么firefox会显示到本地,只 ...

  4. 在 Windows 用上 Linux GUI——GitHub 热点速览 v.21.17

    本文首发于「HelloGitHub」微信公众号,搜索「HelloGitHub」点击关注解锁更多宝藏! 作者:HelloGitHub-小鱼干 超喜欢本周的 GitHub 热点,如果你是个 Windows ...

  5. python在linux上的GUI无法弹出界面

    在进行python写GUI程序的时候,使用Tkinter,发现无法执行程序,报错如下: X connection to localhost:10.0 broken(explicit kill or s ...

  6. 【BZOJ-4213】贪吃蛇 有上下界的费用流

    4213: 贪吃蛇 Time Limit: 5 Sec  Memory Limit: 64 MBSubmit: 58  Solved: 24[Submit][Status][Discuss] Desc ...

  7. [原创]Matlab之GUI生成EXE文件

    近期因为项目需要,简化流程,写了一些Matlab程序,并配备上了GUI界面使其简单易用.然后问题来了,可移植性.使用Matlab生成EXE文件(可以封装很多的function),然后在一台安装有Mat ...

  8. 转载:开发者眼中最好的 22 款 GUI 测试工具

    对于很多同学来说gui程序的测试是一个难点,所以我从网上转载了一篇关于gui测试的一篇文章,里面罗列的很多工具,大家可以尝试一下学习学习. 英文原文:22 best GUI testing tools ...

  9. 开发者眼中最好的 22 款 GUI 测试工具

    1.Abbot - Java GUI 测试框架 Abbot是一个基于GUI的简单的Java测试框架,它能够帮助开发者测试Java用户界面. 它提供事件自动生成和验证Java GUI组件,使您能够轻松地 ...

随机推荐

  1. 《图说VR入门》——DK2入门及其资源汇总

    本文章由cartzhang编写,转载请注明出处. 全部权利保留. 文章链接:http://blog.csdn.net/cartzhang/article/details/53174895 作者:car ...

  2. redis-3.0.0_rc5的RPM包制定

    首先查看脚本: # cat /tmp/redis_before.sh #!/bin/bash if [ ! -d /apps/redis-3.0.0-rc5 ];then mkdir -p /apps ...

  3. Android-一只手指滑动View,另一只手指按Home键,重新进入后View状态无法更新的问题

    上午测试报了一个bug:说是一只手指拖动虚拟摇杆上的View滑块不松,另一只手指点击Home键将App压后台,重新进入的时候,View滑块卡死了. 刚开始看到这个问题感觉很奇怪,因为正常情况下,手指离 ...

  4. CCZone

    /**************************************************************************** Copyright (c) 2010 coc ...

  5. OpenVSwitch 硬件加速浅谈

    https://zhuanlan.zhihu.com/p/57870521 本文首发SDNLAB. 现代的虚拟化技术使得开发和部署高级网络服务变得更加简单方便.基于虚拟化的网络服务,具有多样性,低成本 ...

  6. react-scripts的css modules

    用create-react-app创建的项目基于react-scripts内建支持css modules,需要把css文件名改成filename.module.css,导入方式需要改成: import ...

  7. 每日英语:The Power of Parents Who Say 'No'

    I grew up in an affluent area. Most kids owned multiple Cabbage Patch dolls and Gear bags and pairs ...

  8. linux centOS6 nexus 开启自动启动

    sudo ln -s /opt/nexus-2.6.4/nexus-2.6.4-02/bin/nexus /etc/init.d/nexus 使用  service nexus status/star ...

  9. import-module的注意事项与NDK_MODULE_PATH的配置

    转:http://blog.sina.com.cn/s/blog_4057ab62010197z8.html 具体的语句多参考其他正确的Android.mk   import-module的功能 导入 ...

  10. Deepin Linux修改Grub引导

    grub rescue> 模式修复 登录成功后, sudo upgrade-grub sudo install-grub /dev/sda 系统启动失败,修改fstab, 在grub系统选择界面 ...