我现在做了一个按钮, 想实现点击下去按钮,它响应一个函数而且按钮上的文字变化,再点击起来,按钮响应另一个函数然后按钮上的文字又变回原来状态,怎么实现呢?
比如一个按钮初始状态上边显示的是:"开启",点击下去按钮后,实现了开启功能,且上边的显示变成"关闭";然后再单击起来这个“关闭”按钮,就实现关闭的功能,然后按钮上又显示的是开启...
请高手帮帮忙....
比如一个按钮初始状态上边显示的是:"开启",点击下去按钮后,实现了开启功能,且上边的显示变成"关闭";然后再单击起来这个“关闭”按钮,就实现关闭的功能,然后按钮上又显示的是开启...
请高手帮帮忙....
class Button : public CButton;
在Button里面添加对这两个消息的映射。
SetDlgItemText(IDC_BUTTON1, (bClick = !bClick) ? _T("Close") : _T("Open"));
可以这样:当鼠标按下的时候给按钮发送一个消息用于改变按钮的Text,鼠标抬起的时候给按钮发送另外一个消息改变按钮的Text,
判断当鼠标指针停靠在按钮上方的时候,不就实现了功能么
{
check标题=b
................
}
else
{
check标题=a
................
}
还是这种方法好用,我就经常这么用,不懂可以me我
你好 我用了你说的方法 在响应函数里面加标志位flag 但是只能使按钮点击一次变换,再点击就不行了,好像是不能循环 不知道代码哪里出问题了 能帮我看一下么?
void CCTestDlg::Onpingpang()
{
// TODO: Add your control notification handler code here
bool flag=true;
if(flag=true)
{
CBitmap Bitmap1;
Bitmap1.LoadBitmap(IDB_BITMAP2);
HBITMAP hBitmap1=(HBITMAP)Bitmap1.Detach();
CButton *pButton1=(CButton*)GetDlgItem(IDC_BUTTON1);
pButton1->SetBitmap(hBitmap1);
flag=false;
}
else(flag=false);
{
CBitmap Bitmap;
Bitmap.LoadBitmap(IDB_BITMAP1);
HBITMAP hBitmap=(HBITMAP)Bitmap.Detach();
CButton *pButton=(CButton*)GetDlgItem(IDC_BUTTON1);
pButton->SetBitmap(hBitmap);
flag=true;
}}
不知道问题出在哪里