如何用vc++编写一个简单的(只有加减乘除)计算器程序?
来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/27 01:51:27
如何用vc++编写一个简单的(只有加减乘除)计算器程序?
先设置界面如下
加法按钮代码
void CMy03Dlg::OnBnClickedButton1()
{
// TODO:在此添加控件通知处理程序代码
UpdateData(TRUE);
m_Nub3=m_Nub1+m_Nub2;
UpdateData(FALSE);
}
减法按钮代码
void CMy03Dlg::OnBnClickedButton2()
{
// TODO:在此添加控件通知处理程序代码
UpdateData(TRUE);
m_Nub3=m_Nub1-m_Nub2;
UpdateData(FALSE);
}
乘法按钮代码
void CMy03Dlg::OnBnClickedButton3()
{
// TODO:在此添加控件通知处理程序代码
UpdateData(TRUE);
m_Nub3=m_Nub1*m_Nub2;
UpdateData(FALSE);
}
除法按钮代码
void CMy03Dlg::OnBnClickedButton4()
{
// TODO:在此添加控件通知处理程序代码
UpdateData(TRUE);
if(m_Nub2!=0)
m_Nub3=m_Nub1 / m_Nub2;
else
AfxMessageBox("被除数不能为0");
UpdateData(FALSE);
}
清除按钮代码
void CMy03Dlg::OnBnClickedButton5()
{
// TODO:在此添加控件通知处理程序代码
UpdateData(TRUE);
m_Nub3=0;
m_Nub1=0;
m_Nub2=0;
UpdateData(FALSE);
}
结束按钮代码
void CMy03Dlg::OnBnClickedButton6()
{
// TODO:在此添加控件通知处理程序代码
CDialog::OnOK();
}
如果只允许在输入框中输入数据应该怎样处理?
制作托盘程序
目的:在任务栏中建立一个图标,使该程序永远驻留在内存中.例如邮件检查程序可以作为驻留程序,一旦有邮件来了,就可以接收邮件.
Shell_NotifyIcon函数发送消息来增加、删除、修改任务栏的图标
BOOL TrayMessage(HWND hWnd,DWORD dwMessage,HICON hIcon,PSTR pszTip)
{
BOOL res;
NOTIFYICONDATA tnd;
tnd.cbSize = sizeof(NOTIFYICONDATA);
tnd.hWnd = hWnd;
tnd.uID = IDI_ICON1;
tnd.uFlags = NIF_MESSAGE|NIF_ICON|NIF_TIP;
tnd.uCallbackMessage = WM_MY_TRAY_NOTIFICATION;
tnd.hIcon = hIcon;
lstrcpyn(tnd.szTip,pszTip,sizeof(tnd.szTip));
res = Shell_NotifyIcon(dwMessage,&tnd);// dwMessage为NIM_ADD从任务栏中添加图标、NIM_DELETE从任务栏中删除图标、NIM_MODIFY改变任务栏中图标
if (hIcon)
DestroyIcon(hIcon);
return res;
}
定义一个回调消息:WM_MY_TRAY_NOTIFICATION
在DLG的CPP文件中,
#define WM_MY_TRAY_NOTIFICATION WM_USER+100
为对话框添加消息映射ON_MESSAGE(WM_MY_TRAY_NOTIFICATION,OnTrayNotification)
在DLG的头文件中应该有
public:
long m_Nub1;
float m_Nub3;
CBitmapButton Button;
afx_msg void OnBnClickedButton1();
long m_Nub2;
afx_msg void OnBnClickedButton2();
afx_msg void OnBnClickedButton4();
afx_msg void OnBnClickedButton5();
afx_msg void OnBnClickedButton3();
afx_msg void OnBnClickedButton6();
afx_msg void OnBnClickedButton7();
afx_msg LRESULT OnTrayNotification(WPARAM wparam,LPARAM lparam);
在DLG的CPP文件中应该有
BEGIN_MESSAGE_MAP(CMailCheckDlg,CDialog)
……
ON_MESSAGE(WM_MY_TRAY_NOTIFICATION,OnTrayNotification)
……
END_MESSAGE_MAP()
并定义一个回调消息函数
LRESULT CMailCheckDlg::OnTrayNotification(WPARAM wparam,LPARAM lparam)
{
switch (lparam )
{
case WM_RBUTTONUP:
case WM_LBUTTONDBLCLK://修改不同的按钮处理事件,以观察图标退出效果.
ShowWindow(SW_SHOW);
TrayMessage(m_hWnd,NIM_DELETE,NULL,"");//从任务栏中删除图标
}
return 0;
}
在对话框窗口上添加“驻留”按钮,双击按钮添加代码
void CMailCheckDlg::OnBnClickedButton1()
{
// TODO:在此添加控件通知处理程序代码
下面程序向任务栏添加图标
TrayMessage(m_hWnd,NIM_ADD,NULL,"计算器程序");
TrayMessage(m_hWnd,NIM_MODIFY,m_hIcon,"计算器程序");
ShowWindow(SW_HIDE);
加法按钮代码
void CMy03Dlg::OnBnClickedButton1()
{
// TODO:在此添加控件通知处理程序代码
UpdateData(TRUE);
m_Nub3=m_Nub1+m_Nub2;
UpdateData(FALSE);
}
减法按钮代码
void CMy03Dlg::OnBnClickedButton2()
{
// TODO:在此添加控件通知处理程序代码
UpdateData(TRUE);
m_Nub3=m_Nub1-m_Nub2;
UpdateData(FALSE);
}
乘法按钮代码
void CMy03Dlg::OnBnClickedButton3()
{
// TODO:在此添加控件通知处理程序代码
UpdateData(TRUE);
m_Nub3=m_Nub1*m_Nub2;
UpdateData(FALSE);
}
除法按钮代码
void CMy03Dlg::OnBnClickedButton4()
{
// TODO:在此添加控件通知处理程序代码
UpdateData(TRUE);
if(m_Nub2!=0)
m_Nub3=m_Nub1 / m_Nub2;
else
AfxMessageBox("被除数不能为0");
UpdateData(FALSE);
}
清除按钮代码
void CMy03Dlg::OnBnClickedButton5()
{
// TODO:在此添加控件通知处理程序代码
UpdateData(TRUE);
m_Nub3=0;
m_Nub1=0;
m_Nub2=0;
UpdateData(FALSE);
}
结束按钮代码
void CMy03Dlg::OnBnClickedButton6()
{
// TODO:在此添加控件通知处理程序代码
CDialog::OnOK();
}
如果只允许在输入框中输入数据应该怎样处理?
制作托盘程序
目的:在任务栏中建立一个图标,使该程序永远驻留在内存中.例如邮件检查程序可以作为驻留程序,一旦有邮件来了,就可以接收邮件.
Shell_NotifyIcon函数发送消息来增加、删除、修改任务栏的图标
BOOL TrayMessage(HWND hWnd,DWORD dwMessage,HICON hIcon,PSTR pszTip)
{
BOOL res;
NOTIFYICONDATA tnd;
tnd.cbSize = sizeof(NOTIFYICONDATA);
tnd.hWnd = hWnd;
tnd.uID = IDI_ICON1;
tnd.uFlags = NIF_MESSAGE|NIF_ICON|NIF_TIP;
tnd.uCallbackMessage = WM_MY_TRAY_NOTIFICATION;
tnd.hIcon = hIcon;
lstrcpyn(tnd.szTip,pszTip,sizeof(tnd.szTip));
res = Shell_NotifyIcon(dwMessage,&tnd);// dwMessage为NIM_ADD从任务栏中添加图标、NIM_DELETE从任务栏中删除图标、NIM_MODIFY改变任务栏中图标
if (hIcon)
DestroyIcon(hIcon);
return res;
}
定义一个回调消息:WM_MY_TRAY_NOTIFICATION
在DLG的CPP文件中,
#define WM_MY_TRAY_NOTIFICATION WM_USER+100
为对话框添加消息映射ON_MESSAGE(WM_MY_TRAY_NOTIFICATION,OnTrayNotification)
在DLG的头文件中应该有
public:
long m_Nub1;
float m_Nub3;
CBitmapButton Button;
afx_msg void OnBnClickedButton1();
long m_Nub2;
afx_msg void OnBnClickedButton2();
afx_msg void OnBnClickedButton4();
afx_msg void OnBnClickedButton5();
afx_msg void OnBnClickedButton3();
afx_msg void OnBnClickedButton6();
afx_msg void OnBnClickedButton7();
afx_msg LRESULT OnTrayNotification(WPARAM wparam,LPARAM lparam);
在DLG的CPP文件中应该有
BEGIN_MESSAGE_MAP(CMailCheckDlg,CDialog)
……
ON_MESSAGE(WM_MY_TRAY_NOTIFICATION,OnTrayNotification)
……
END_MESSAGE_MAP()
并定义一个回调消息函数
LRESULT CMailCheckDlg::OnTrayNotification(WPARAM wparam,LPARAM lparam)
{
switch (lparam )
{
case WM_RBUTTONUP:
case WM_LBUTTONDBLCLK://修改不同的按钮处理事件,以观察图标退出效果.
ShowWindow(SW_SHOW);
TrayMessage(m_hWnd,NIM_DELETE,NULL,"");//从任务栏中删除图标
}
return 0;
}
在对话框窗口上添加“驻留”按钮,双击按钮添加代码
void CMailCheckDlg::OnBnClickedButton1()
{
// TODO:在此添加控件通知处理程序代码
下面程序向任务栏添加图标
TrayMessage(m_hWnd,NIM_ADD,NULL,"计算器程序");
TrayMessage(m_hWnd,NIM_MODIFY,m_hIcon,"计算器程序");
ShowWindow(SW_HIDE);
如何用vc++编写一个简单的(只有加减乘除)计算器程序?
如何做一个计算器?只有加减乘除的,只有整数的?
用C#编写一个简单的计算器,只含有加减乘除四则运算,怎么处理被除数不能为零的异常呢
编写一个具有加减乘除四则运算的小计算器,需求能反复多次操作,当输入运算符
如何用VC做个简易的计算器,要有思路,
如何用matlab编写斜坡函数,要一个最简单的斜坡函数就行,只要程序就好了
2、vb编写一个简单的计算器程序,实现两个数的加、减、乘、除.运行结果如下图2所示.
苹果怎么开科学计算器啊 我怎么打开计算器就只有加减乘除啊
用C语言编写一个简单的计算器
如何用C#制作简单的计算器,思路是什么啊
只有加减或只有乘除的计算法则
如何用VB语言编写这个程序?