分类: 技术文章 |
1 定义成员变量与函数说明:
class CRollDlg : public CDialog
{
// Construction
public:
CRollDlg(CWnd* pParent =
NULL); // standard constructor
{
// Construction
public:
...
}
2 定义"开始摇奖"函数:
void CRollDlg::OnRoll()
{
// TODO: Add your control notification handler
code here
if(m_rolltime==0)
{
m_rolltime=1;
SetDlgItemText(IDC_ROLL,"停");
pWorkThread1=AfxBeginThread
(ReceiveThread1,this,THREAD_PRIORITY_HIGHEST);
{
}
3
由于在debug下,线程不好使用UpdateData,故此处自定义一个消息,过程如下:
#define myMessage WM_USER+100 //自定义消息
protected:
HICON m_hIcon;
BEGIN_MESSAGE_MAP(CRollDlg, CDialog)
//{{AFX_MSG_MAP(CRollDlg)
ON_WM_SYSCOMMAND()
ON_WM_PAINT()
ON_WM_QUERYDRAGICON()
ON_BN_CLICKED(IDC_ROLL, OnRoll)
ON_MESSAGE(myMessage,OnMymessage) //消息映射
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
END_MESSAGE_MAP()
4 线程函数:
UINT CRollDlg::ReceiveThread1(void
*param)
{
CRollDlg *dlg=(CRollDlg *) param;
dlg->GetParent();
{
//
//
//
}
5 自定义消息处理函数:
void CRollDlg::OnMymessage(WPARAM wParam,LPARAM lParam)
{
m_swnumber=m_str;
m_str="";
UpdateData(false);
}
{
}
至此就完成了简单的随机抽奖小程序