原程序:兴趣课的个人信息记录以及兴趣方向选择弹出窗口的建立
代码:
Example9_3 .Java
public class Example9_3 {
public static void main (String args[]) {
ComponentInWindow win=new ComponentInWindow();
win.setBounds(100,100,450,260);
win.setTitle("常用组件");
}
}
ComponentInWindow.java
import java.awt.*;
import javax.swing.*;
public class ComponentInWindow extends JFrame{
JCheckBox checkBox1,checkBox2;//复选框
JRadioButton radioM,radioF;//单选框
ButtonGroup group;
JComboBox<String>comBox;//下拉列表
public ComponentInWindow() {
init();
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
void init() {
setLayout(new FlowLayout());
comBox=new JComboBox<String>();
checkBox1=new JCheckBox("喜欢音乐");
checkBox2=new JCheckBox("喜欢旅游");
group=new ButtonGroup();
radioM=new JRadioButton("男");
radioF=new JRadioButton("女");
group.add(radioM);
group.add(radioF);
add(checkBox1);
add(checkBox2);
add(radioM);
add(radioF);
comBox.addItem("音乐天地");
comBox.addItem("武术天地");
add(comBox);
}
}
运行结果:
适当改动:
win.setTitle("常用组件")中的“常用组件”改为“个人简介”;窗体位置偏向于屏幕左上方,win.setBounds(100,100,450,260)改为win.setBounds(500,250,450,260),这样用户弹出此窗口时,更大众化审美,符合常理。
(改动后测试可行)
增量开发:
用户需求:在简介的窗口界面上,选择与自己较为符合的个人属性并记录,选择自己的兴趣方向。能够选择的方向尽量够多,个人的兴趣爱好各有所长,让用户能更好的展现自己更擅长的一面,在原有界面组件的基础上增添窗体下半部分“备注文本框”,独特的用户便能诉说可能更有意思的兴趣天地,愿用户每天活在快乐中。
设计:
窗口布局与改动后的一致。在原有界面组件的基础上增添窗体下半部分“备注文本框”。
开发:
在“喜欢音乐”,“喜欢旅游”的基础上,增添更多选项,例如:“喜欢打球(羽毛球,篮球,网球...)”,“喜欢滑板”,“喜欢游泳”,“喜欢摄影”,“喜欢动漫”,“喜欢游戏”等等。(代码只以添加“喜欢滑板”为例);下拉列表增加与用户兴趣爱好相似的发展方向,例如:“滑板达人”,“摄影驴友”,“唯爱动漫”,“游戏信仰”等等。(代码只以添加“滑板达人”为例)。在原有界面组件的基础上增添窗体下半部分“备注文本框”。
改动后代码:
Example9_3 .Java
public class Example9_3 {
public static void main (String args[]) {
ComponentInWindow win=new ComponentInWindow();
win.setBounds(100,100,450,260);
win.setTitle("常用组件");
}
}
ComponentInWindow.java
import java.awt.*;
import javax.swing.*;
public class ComponentInWindow extends JFrame{
JTextArea bz;//备注框
JCheckBox checkBox1,checkBox2,checkBox3;//复选框
JRadioButton radioM,radioF;//单选框
ButtonGroup group;
JComboBox<String>comBox;//下拉列表
public ComponentInWindow() {
init();
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
void init() {
setLayout(new FlowLayout());
JTextArea bz=new JTextArea(8,50);
comBox=new JComboBox<String>();
checkBox1=new JCheckBox("喜欢音乐");
checkBox2=new JCheckBox("喜欢旅游");
checkBox3=new JCheckBox("喜欢滑板");
group=new ButtonGroup();
radioM=new JRadioButton("男");
radioF=new JRadioButton("女");
group.add(radioM);
group.add(radioF);
add(checkBox1);
add(checkBox2);
add(checkBox3);
add(radioM);
add(radioF);
comBox.addItem("音乐天地");
comBox.addItem("武术天地");
comBox.addItem("滑板达人");
add(comBox);
add(new JScrollPane(bz));
}
}
(经测试,代码可运行,效果满足用户需求分析)
程序运行结果:
原文:https://www.cnblogs.com/tmynb/p/10465003.html