資源簡介
java隨機點名窗口小程序源碼,經(jīng)過多次版本調(diào)整,此版本2019最新版。
點名最討厭的兩件事:1.點到不想點的人。2.想點的人點不到
此次更新已完美解決,在后面加上了權(quán)重值。

代碼片段和文件信息
package?com.ljl;
import?java.awt.BorderLayout;
import?java.awt.Dimension;
import?java.awt.Font;
import?java.awt.event.ActionEvent;
import?java.awt.event.ActionListener;
import?java.awt.event.WindowAdapter;
import?java.awt.event.WindowEvent;
import?java.io.IOException;
import?java.util.Random;
import?javax.swing.*;
import?javax.swing.border.EmptyBorder;
import?javax.swing.border.titledBorder;
public?class?Jarmframe?extends?Jframe?implements?ActionListener{
/**
?*?隨機界面
?*/
private?static?final?long?serialVersionUID?=?932748174620540486L;
private?static?JTextArea?jtextarea;
JButton?button;
java.util.List?users;
public?Jarmframe()?throws?IOException?{
this.init();
}
private?void?init()?throws?IOException?{
setSize(350?130);
setLocationRelativeTo(null);
setContentPane(conentpane());
NameInfo?info?=?new?NameInfo();
users?=??info.getUsers();
}
private?JPanel?conentpane()?throws?IOException?{
JPanel?panel?=?new?JPanel();
panel.setBorder(new?EmptyBorder(8?8?8?8));
panel.add(BorderLayout.WEST?createTipane());
panel.add(BorderLayout.CENTER?createJbutton());
return?panel;
}
private?JButton?createJbutton()?{
button?=?new?JButton(“開始“);
button.setPreferredSize(new?Dimension(60?46));;
button.addActionListener(this);
return?button;
}
public?static?void?setAlert(String?str){
jtextarea.setText(str);
}
private?JScrollPane?createTipane()?throws?IOException?{
JScrollPane?pane?=?new?JScrollPane();
pane.setBorder(new?titledBorder(“姓名“));
jtextarea?=?new?JTextArea();
Font?x?=?new?Font(“Serif“020);
jtextarea.setSize(190?40);
jtextarea.setFont(x);
jtextarea.setLineWrap(true);
jtextarea.setEditable(false);
pane.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_NEVER);
pane.getViewport().add(jtextarea);
return?pane;
}
Thread?t;
@Override
public?void?actionPerformed(ActionEvent?e)?{
if(e.getSource()==?button){
if(!“停止“.equals(button.getText())){
final?Random?rd?=?new?Random();
t?=?new?Thread(){
public?void?run()?{
while(true){
String?name?=?users.get(rd.nextInt(users.size()-1));
setAlert(name);
try?{
sleep(30);
}?catch?(InterruptedException?e)?{
//?TODO?Auto-generated?catch?block
e.printStackTrace();
}
}
}
};
t.start();
button.setText(“停止“);
}else{
t.stop();
button.setText(“開始“);
}
}
}
public?static?void?main(String[]?args)?throws?IOException?{
Jarmframe?jf?=?new?Jarmframe();
jf.setDefaultCloseOperation(Jframe.DO_NOTHING_ON_CLOSE);
jf.addWindowListener(new?WindowAdapter()?{
@Override
public?void?windowClosing(WindowEvent?e)?{
System.exit(0);
}
});
jf.setVisible(true);
}
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件?????????301??2012-05-31?09:58??.classpath
?????文件?????????390??2012-05-31?09:58??.project
?????目錄???????????0??2019-09-17?11:21??.settings\
?????文件?????????629??2012-05-31?09:58??.settings\org.eclipse.jdt.core.prefs
?????目錄???????????0??2019-09-17?11:22??bin\
?????目錄???????????0??2019-09-17?11:22??bin\com\
?????目錄???????????0??2019-09-17?13:32??bin\com\ljl\
?????文件????????1175??2019-09-17?13:33??bin\com\ljl\Jarmfr
?????文件?????????613??2019-09-17?13:33??bin\com\ljl\Jarmfr
?????文件????????3952??2019-09-17?13:33??bin\com\ljl\Jarmfr
?????文件????????1858??2019-09-17?12:50??bin\com\ljl\NameInfo.class
?????目錄???????????0??2019-09-17?11:21??src\
?????目錄???????????0??2019-09-17?11:21??src\com\
?????目錄???????????0??2019-09-17?12:49??src\com\ljl\
?????文件????????2903??2019-09-17?13:33??src\com\ljl\Jarmfr
?????文件????????1161??2019-09-17?12:50??src\com\ljl\NameInfo.java
?????文件??????????46??2019-09-20?12:29??User.txt
?????文件?????????247??2019-09-20?12:37??使用說明.txt
- 上一篇:NIIT JAVA考試題庫
- 下一篇:ElasticSearch Java API
評論
共有 條評論