很多都是自己写的,慢慢的尝试,里面改了很多次数

但是最后的结果是没有错的

最后的最后终于得到想要的结果

慢慢的训练总能得到训练的

加油!!!!

上代码:

import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.Icon;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JLabel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;

public class MDialog extends JDialog {
private JTextField tf1,tf2,tf3,tf4;
MThread mt1,mt2,mt3,mt4;
JButton bt1,bt2,bt3;
JTextArea ja=new JTextArea();
JLabel jl[]={null,null,null,null};
JLabel jb=new JLabel();
JScrollPane scoll=new JScrollPane();
ThreadGroup tg=new ThreadGroup("摇号");
// static boolean isstop=true;
public MDialog(){
this.setTitle("随机摇号小程序");
this.setBackground(Color.BLUE);
this.setBounds(100, 100, 450, 300);
getContentPane().setLayout(null);
bt1=createButton(this,"开始",0);
tf1=createTextField(this, 0);
tf2=createTextField(this, 1);
tf3=createTextField(this, 2);
tf4=createTextField(this, 3);
mt1=new MThread(tf1, tg);
mt2=new MThread(tf2, tg);
mt3=new MThread(tf3, tg);
mt4=new MThread(tf4, tg);
bt1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// String n1=tf1.getText();
// String n2=tf2.getText();
// String n3=tf3.getText();
// String n4=tf4.getText();
// isstop=true;
// MThread t1=new MThread(tf1,tg);
// MThread t2=new MThread(tf2,tg);
// MThread t3=new MThread(tf3,tg);
// MThread t4=new MThread(tf4,tg);
//MThread t1=new MThread(tf1,tg);
mt1.start();
mt2.start();
mt3.start();
mt4.start();
bt1.setEnabled(false);
}
});
JLabel lb=new JLabel("数字显示");
lb.setBounds(37, 27, 54, 15);
this.getContentPane().add(lb);

// jl[0]=createJLabel(this, 0);
// jl[1]=createJLabel(this, 1);
// jl[2]=createJLabel(this, 2);
// jl[3]=createJLabel(this, 3);
// jl1.setBounds(60, 90, 35, 21);
// jl2.setBounds(98, 90,35, 21);
// jl3.setBounds(136, 90,35, 21);
// jl4.setBounds(174, 90,35, 21);
// this.add(jl[0]);
// this.add(jl[1]);
// this.add(jl[2]);
// this.add(jl[3]);
ja.setBounds(37, 90, 200, 150);
this.add(ja);
this.add(scoll);
bt2=createButton(this, "抽取一次", 1);
bt2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
// isstop=false;
// mt1.interrupt();
// mt2.interrupt();
// mt3.interrupt();
// mt4.interrupt();
//System.out.println(mt1.s);
// String s1;
// s1=(mt1.m+"");
// String s2;
// s2=(mt2.m+"");
// String s3;
// s3=(mt3.m+"");
// String s4;
s4=(mt4.m+"");
// jl[0].setText(mt1.jf.getText());
// jl[1].setText(mt2.jf.getText());
// jl[2].setText(mt3.jf.getText());
// jl[3].setText(mt4.jf.getText());
tg.interrupt();
synchronized (mt1) {
synchronized (mt2) {
synchronized (mt3) {
synchronized (mt4) {
// System.out.println();
// ja.setLineWrap(true);
ja.append("\n"+mt1.jf.getText()+""+mt2.jf.getText()+""+mt3.jf.getText()+""+mt4.jf.getText());
// scoll.add(ja);
// ja.setText(mt2.jf.getText());
}
}
}
}
bt2.setEnabled(false);
}

});
bt3=createButton(this, "继续", 2);
bt3.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
tg.resume();
bt1.setEnabled(false);
bt2.setEnabled(true);
}
});
}
public static int getnumber(int n){
int m;
m=n;
return m;
}
public class MThread extends Thread {
int i=0;
JTextField jf=new JTextField();
// int m;
public MThread(JTextField jf,ThreadGroup tg){
super(tg,"摇号");
this.jf=jf;
}
public void run(){
while(true){
// int t=0;
synchronized (this) {
i=(i+1)%10;
jf.setText(""+i);
//
}
if(this.interrupted()){
this.suspend();
}
// t++;
}
}
}
public static void main(String[] args){
try{
MDialog dialog=new MDialog();
dialog.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
dialog.setVisible(true);
}catch(Exception e){
e.printStackTrace();
}
}
public static JTextField createTextField(MDialog mg, int i){
JTextField jf=new JTextField();
jf.setBounds(37+i*38,52,35,21);
mg.getContentPane().add(jf);
return jf;
}
public static JLabel createJLabel(MDialog mg,int i){
JLabel jl=new JLabel();
jl.setBounds(37+i*38, 90, 35, 21);
mg.getContentPane().add(jl);
return jl;
}
public static JButton createButton(MDialog mg, String string, int i){
//Icon name;
JButton jb=new JButton(string);
jb.setBounds(300, 52+i*35, 95, 25);
mg.getContentPane().add(jb);
return jb;
}

}

利用Java线程及JFrame面板制作一个随机摇号小程序相关推荐

  1. 基于小程序+云开发制作一个文件传输助手小程序

    微信文件传输助手是真人?基于云开发制作一个文件传输助手小程序,你发给ta的小秘密,只有你自己知道. 开发步骤 一.创建小程序 二.云开发配置 环境配置 绑定云环境 三.页面设计 首页 详情页 底部弹窗 ...

  2. 选车位摇号小程序开发制作

    选车位摇号小程序开发制作功能:后台上传用户的姓名.身份证号.手机号.作为确认条件.用户摇号的时候要输入对应的姓名.手机号.身份证号.系统会自动匹配后台据,匹配通过用户可以参与摇号,必摇中.摇中有二维码 ...

  3. java数组36选7_36选7随机摇号

    import java.util.Random; public class RandomDemo { public static void main(String[] args) { lottery( ...

  4. python简单图画程序_制作一个简单的画图小程序界面

    1 新建一个文本文档,然后点击重命名,建立一个python文件.后缀为.py.如图所示,系统会提示是否更改后缀,点击是.然后就创建了一个python文件. 2 打开刚才创建的文件,使用idle打开方式 ...

  5. 用java的二维数组做一个简易计算优惠小程序(附带源码)

    要求: 1.单点: 溜肥肠24元 酱肘子32 米饭3元 2.订单满30打八折 3.优惠价: 溜肥肠18元 4.打八折与优惠价不能同时使用,点这三样,最少多少钱? 思路: 首先定义一个 String 类 ...

  6. 一个随机摇号的js脚本

    默认是随机生成1~10内的十个数 <!DOCTYPE html> <html><head><meta charset="UTF-8"> ...

  7. java摇号抽奖程序,Excel真的太强大了,能把抽奖功能做成车牌号摇号程序,真是人才...

    大家好,这几天也没有朋友给我留言问我问题了,一时间竟然不知道要教大家些什么了.在想素材的时候突然又想到了抽奖小程序,不知大家还有印象吗?想到抽奖,又让我突然想到了车牌号摇号,于是素材就来了,Excel ...

  8. 还在想假期去哪玩?直接做一个旅游攻略小程序

    憋了几年好不容易解封准备出去散散心,但看着大江南北这么多景点是不是有点让你选择强迫症呢?那就先制作一个旅游攻略小程序看看驴友们的分享吧.

  9. 利用 C# 中的 FileSystemWatcher 制作一个文件夹监控小工具

    利用 C# 中的 FileSystemWatcher 制作一个文件夹监控小工具 独立观察员 2020 年 12 月 26 日 前一段看到微信公众号 "码农读书" 上发了一篇文章&l ...

最新文章

  1. iOS Xcode全面剖析
  2. JavaScript 复习之 事件模型 和 Event对象
  3. 【Linux网络编程学习】socket API(socket、bind、listen、accept、connect)及简单应用
  4. 程序编码应保持良好的规范(C#)
  5. kubectl apply -f_广州车展捷豹路虎参展阵容 全新F-PACE 路虎卫士90
  6. c primer英文版第5版_2019足坛10大巨星:梅西第2范戴克第3,C罗第5
  7. OpenShift 4 之Istio-Tutorial (9) 访问限流
  8. Shiro——从零开始进行详解官方入门案例
  9. *** error 65: access violation at C:0x001B : no 'execute/read' permission
  10. swift 二进制读写_Swift二进制搜索树
  11. TASLP | 从判别到生成:基于对比学习的生成式知识抽取方法
  12. Pandas数据类型-DataFrame之创建和访问
  13. drool 7.x 语法和属性
  14. 【附干货】卸载CAD后将注册表清理干净的方法及步骤
  15. 视觉SLAM总结-本质矩阵E分解
  16. python zip压缩文件下载及解压
  17. 字符识别,口算题识别论文小梗概
  18. 自有项目Iframe嵌入ThingJS物联网可视化项目代码解析
  19. 利用googlemap查询经纬度
  20. 这些地区的大学,取消英语四六级口语考试!

热门文章

  1. sliksvn 下载与安装
  2. 为什么选择 Intellij IDEA 作为日常开发工具
  3. Android 11-第三方应用无法拉起微信适配
  4. DARPA互联网协议的设计哲学
  5. 一款新颖的千纸鹤的折法图解
  6. Netty 学习之 Socket
  7. 小程序 wepy 用户取消授权以及取消获取地理位置后的处理方法
  8. html语言基范例,简单html网页范例
  9. ssj框架的搭建流程
  10. CSS产品卡片动画效果的实现