找了兩組程序:
成都創(chuàng)新互聯(lián)成都企業(yè)網(wǎng)站建設(shè)服務(wù),提供成都網(wǎng)站設(shè)計、成都網(wǎng)站建設(shè)網(wǎng)站開發(fā),網(wǎng)站定制,建網(wǎng)站,網(wǎng)站搭建,網(wǎng)站設(shè)計,響應(yīng)式網(wǎng)站開發(fā),網(wǎng)頁設(shè)計師打造企業(yè)風(fēng)格網(wǎng)站,提供周到的售前咨詢和貼心的售后服務(wù)。歡迎咨詢做網(wǎng)站需要多少錢:18982081108
代碼一:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
class GoodLucky extends JFrame implements ActionListener
{
JTextField tf = new JTextField();
JButton b1 = new JButton("開始");
JButton b2 = new JButton("停止");
boolean sg=false;
public GoodLucky(){
b1.setActionCommand("start");
JPanel p = new JPanel();
p.add(b1);
p.add(b2);
b1.addActionListener(this);
b2.addActionListener(this);
b2.setEnabled(false);
this.getContentPane().add(tf,"North");
this.getContentPane().add(p,"South");
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setSize(300,200);
this.setLocation(300,300);
Cursor cu = new Cursor(Cursor.HAND_CURSOR);
this.setCursor(cu);
this.setVisible(true);
tf.setText("祝大家鴻運!");
this.go();
}
public void go()
{
while(true)
{
if(sg==true)
{
String s = " ";
for(int j = 1; j = 7;j++)
{
int i = (int)(Math.random() * 9) + 1;
if(i 10)
{
s = s + " 0" + i;
}
else
{
s = s + " " + i;
}
}
tf.setText(s);
}
try
{
Thread.sleep(100);
}
catch(java.lang.InterruptedException e)
{
e.printStackTrace();
}
}
}
public void actionPerformed(ActionEvent e)
{
String s = e.getActionCommand();
if(s.equals("start"))
{
sg = true;
b1.setEnabled(false);
b2.setEnabled(true);
}
else
{
sg= false;
b2.setEnabled(false);
b1.setEnabled(true);
}
}
public static void main(String[] args)
{
new GoodLucky();
}
}
代碼二:
package com.softeem.lesson03;
import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.Font;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class LuckyNumberInterface extends JFrame {
JLabel ltitle = new JLabel("歡迎使用本抽獎機", JLabel.CENTER);
JLabel linput = new JLabel("幸運號碼:");
JTextField input = new JTextField(20);
JButton btnStart = new JButton("開始");
JButton btnStop = new JButton("停止");
JPanel lpanel = new JPanel();
JPanel btnPanel = new JPanel();
public LuckyNumberInterface() {
super("抽獎機");
final LuckyNumber ln = new LuckyNumber(input);
ln.start();
Container container = getContentPane();
lpanel.add(linput);
lpanel.add(input);
btnPanel.add(btnStart);
btnPanel.add(btnStop);
Font font = new Font("宋體", Font.BOLD, 16);
ltitle.setFont(font);
container.add(ltitle, BorderLayout.NORTH);
container.add(lpanel, BorderLayout.CENTER);
container.add(btnPanel, BorderLayout.SOUTH);
btnStart.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent arg0) {
ln.setFlag(true);
}
});
btnStop.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent arg0) {
ln.setFlag(false);
}
});
setDefaultCloseOperation(EXIT_ON_CLOSE);
setSize(400, 120);//設(shè)置窗口的顯示大小
setLocation(400, 300);//設(shè)置窗口顯示的位置
setVisible(true);//顯示窗口
}
public static void main(String[] args) {
new LuckyNumberInterface();
}
}
package com.softeem.lesson03;
import java.text.DecimalFormat;
import java.util.Random;
import javax.swing.JTextField;
public class LuckyNumber extends Thread {
private String luckyNumber = "";
private boolean flag = false;//開關(guān)
private JTextField input;
public LuckyNumber(JTextField input) {
this.input = input;
}
public void setFlag(boolean flag) {
this.flag = flag;
}
@Override
public void run() {
while (true) {
if (flag) {
generatorLuckyNumber();
}
}
}
public void generatorLuckyNumber() {
String[] firstNumber = { "130", "131", "134", "137", "135", "139",
"150", "151", "155", "158", "159" };
Random rd = new Random();
int number = rd.nextInt(10000);
DecimalFormat df = new DecimalFormat("0000");
String lastNumber = df.format(number);
luckyNumber = firstNumber[rd.nextInt(firstNumber.length)] + "****"
+ lastNumber;
input.setText("");
input.setText(luckyNumber);
}
}
在定義函數(shù)時有時在語句前,有的在語句后。
希望能幫到你!
// giftDlg.h : header file
//
#if !defined
#if _MSC_VER 1000
#pragma once
#endif // _MSC_VER 1000
// CGiftDlg dialog
class CGiftDlg : public CDialog
{
// Construction
public:
int FreeMem();
int ReSetData();
int InitData(); //初始化數(shù)組
CGiftDlg(CWnd* pParent = NULL); // standard constructor
char *code[1000];//指向身份證號數(shù)組的指針
char *name[1000];//指向姓名數(shù)組的指針
char data[1000]; //隨機數(shù)組
int ptr; //進度條當(dāng)前指向隨機數(shù)組的指針
int totalid; //參加抽獎的id總數(shù),如果抽出一個,自減1
bool bstart; //標(biāo)記進度條是否在滾動
// Dialog Data
//{{AFX_DATA(CGiftDlg)
enum ;
CButton m_btgo;
CString m_code;
CString m_msg;
//}}AFX_DATA
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CGiftDlg)
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL
// Implementation
protected:
HICON m_hIcon;
// Generated message map functions
//{{AFX_MSG(CGiftDlg)
virtual BOOL OnInitDialog();
afx_msg void OnPaint();
afx_msg HCURSOR OnQueryDragIcon();
virtual void OnOK();
afx_msg void OnTimer(UINT nIDEvent);
afx_msg void OnCancelMode();
virtual void OnCancel();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
//}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_GIFTDLG_H__21D8D4EF_07F4_4F29_9351_78F99BFF7723__INCLUDED_)
// giftDlg.cpp : implementation file
//
#include "stdafx.h"
#include "gift.h"
#include "giftDlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
// CGiftDlg dialog
CGiftDlg::CGiftDlg(CWnd* pParent /*=NULL*/)
: CDialog(CGiftDlg::IDD, pParent)
{
//{{AFX_DATA_INIT(CGiftDlg)
m_code = _T("");
m_msg = _T("");
//}}AFX_DATA_INIT
// Note that LoadIcon does not require a subsequent DestroyIcon in Win32
m_hIcon = AfxGetApp()-LoadIcon(IDR_MAINFRAME);
}
void CGiftDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CGiftDlg)
DDX_Control(pDX, IDOK, m_btgo);
DDX_Text(pDX, IDC_STATIC_CODE2, m_code);
DDX_Text(pDX, IDC_STATIC_MSG, m_msg);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CGiftDlg, CDialog)
//{{AFX_MSG_MAP(CGiftDlg)
ON_WM_PAINT()
ON_WM_QUERYDRAGICON()
ON_WM_TIMER()
ON_WM_CANCELMODE()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
// CGiftDlg message handlers
BOOL CGiftDlg::OnInitDialog()
{
CDialog::OnInitDialog();
InitData();
bstart=false;
// Set the icon for this dialog. The framework does this automatically
// when the application's main window is not a dialog
SetIcon(m_hIcon, TRUE); // Set big icon
SetIcon(m_hIcon, FALSE); // Set small icon
// TODO: Add extra initialization here
m_msg.Format ("按開始鍵開始滾動,抽獎箱中人數(shù):%d",totalid);
UpdateData(FALSE);
return TRUE; // return TRUE unless you set the focus to a control
}
// the minimized window.
HCURSOR CGiftDlg::OnQueryDragIcon()
{
return (HCURSOR) m_hIcon;
}
void CGiftDlg::OnOK()
{
// TODO: Add extra validation here
if(bstart)
{
KillTimer(1);
bstart=false;
m_msg.Format ("按開始鍵開始滾動,抽獎箱中人數(shù):%d",totalid-1);
m_code.Format ("抽出的號碼:%s\n姓名:%s",code[data[ptr]],name[data[ptr]]);
//AfxMessageBox(m_code);
ReSetData();//剔除抽出的號碼,重新打亂
if(totalid1)
{
m_btgo.EnableWindow (FALSE);
}
m_btgo.SetWindowText ("開始");
}
else
{
SetTimer(1, 100,NULL);
bstart=true;
m_msg.Format ("按停止鍵抽一個獎");
m_btgo.SetWindowText ("停止");
}
UpdateData(FALSE);
//CDialog::OnOK();
}
void CGiftDlg::OnTimer(UINT nIDEvent)
{
// TODO: Add your message handler code here and/or call default
m_code.Format ("現(xiàn)在的號碼:%s",code[data[ptr]]);
UpdateData(FALSE);
ptr++;
ptr%=totalid;
CDialog::OnTimer(nIDEvent);
}
void CGiftDlg::OnCancelMode()
{
CDialog::OnCancelMode();
// TODO: Add your message handler code here
}
int CGiftDlg::InitData()
{
FILE * fp=fopen("id.txt","r");
ptr=0;
totalid=1;
if (fp==NULL)
{
return 0;
}
char buf[80];
int line=0;
while(!feof(fp))
{
char *p=fgets(buf,80,fp);
if (p!=NULL)
{
name[line]=(char*)malloc(80);
code[line]=(char*)malloc(80);
memset(code[line],0,80);
memset(name[line],0,80);
int flag=0;
for(int i=0;i80buf[i]!='\0';i++)
{
if((buf[i]!=',' ) (flag==0))
{
code[line][i]=buf[i];
}
else if(flag==0)
{
flag=i;
}
else if((buf[i]!=',' ) (flag!=0))
{
name[line][i-flag-1]=buf[i];
}
}
TRACE("%s-%s",code[line],name[line]);
memset(buf,0,80);
line++;
}
}
fclose(fp);
for(int j=0;jline;j++)
{
data[j]=j;
}
for(int i=0;iline;i++)
{
int pos=rand()%(line-i)+i;
int temp=data[i];
data[i]=data[pos];
data[pos]=temp;
TRACE("%d",data[i]);
}
totalid=line;
return 1;
}
int CGiftDlg::ReSetData()
{
//ptr剔除,與最后一個交換,然后釋放內(nèi)存
int line=totalid;
int temp=data[ptr];
data[ptr]=data[line-1];
data[line-1]=temp;
//AfxMessageBox(name[data[line-1]]);
free(code[data[line-1]]);
free(name[data[line-1]]);
totalid--;
line--;
ptr=0;
for(int i=0;iline;i++)//重新打亂
{
int pos=rand()%(line-i)+i;
int temp=data[i];
data[i]=data[pos];
data[pos]=temp;
TRACE("%d",data[i]);
}
return 1;
}
int CGiftDlg::FreeMem()
{
int line=totalid;
for(int i=0;iline;i++)
{
free(code[i]);
free(name[i]);
}
return 1;
}
void CGiftDlg::OnCancel()
{
// TODO: Add extra cleanup here
FreeMem();
CDialog::OnCancel();
}
id.txt
332601771212061,章魚
110103198511110453,李光
21010119541201045X,周瑜
320304780102066,韓信
442601771212061,沈兵
510103198511110453,宏志
220101841201045X,范進
520304197801020661,曾國
352601771212088,亂馬
540122198511110453,賈海
這個需要java去編程個軟甲才能實現(xiàn)每次點擊所產(chǎn)生的結(jié)果不一樣。
當(dāng)前文章:go語言抽獎程序 go互動抽獎
當(dāng)前鏈接:http://m.rwnh.cn/article18/doophdp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信小程序、定制開發(fā)、電子商務(wù)、服務(wù)器托管、軟件開發(fā)、域名注冊
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)