发布网友
共5个回答
热心网友
ondraw有很多的消息都可以触发,你可以自定义一个函数,函数让ondraw调用,给一个变量来标识是否允许自定义函数执行,比如
void Fun
{
if(flag)
{
//do something
}
}
你自己控制flag来实现你的要求
热心网友
这个你看看多文档程序的执行过程,对你理解程序函数执行过程很有帮助~~
一般你不写代码,默认的话,就是在点击控件之前,视图中不可以绘制图形。
例子:
void CBMP24View::OnDraw(CDC* pDC)
{
CBMP24Doc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
if (!pDoc) //你看看~应该是第一次打开不绘制
return;
// TODO:
CRect rect;
GetClientRect(&rect);
if (!pDoc->bData) 你看看~应该是第一次打开不绘制
return;
long biWidth=pDoc->bInfo->bmiHeader.biWidth;
long biHeight=pDoc->bInfo->bmiHeader.biHeight;
//使图像显示在客户区的正*
int ox,oy;
if((unsigned long)(rect.Width()) > biWidth)
ox = (rect.Width() - biWidth) / 2;
else ox=0;
if((unsigned long)(rect.Height()) > biHeight)
oy = (rect.Height() - biHeight)>>1;
else oy=0;
//将整个图像或部分显示在客户区
SetDIBitsToDevice(pDC->m_hDC, ox, oy, biWidth, biHeight, 0, 0, 0, -biHeight,
pDoc->bData,pDoc->bInfo,DIB_RGB_COLORS);
}
热心网友
添加控件按钮后,点击按钮不是有添加类向导吗,在里面定义ondraw()函数,定义成功后,双击该按钮,会在程序中进入ondrow()函数体,将你原来ondrow()函数中的语句添加进去就行了,试试吧。追问这个控件和ondrow()不是一个类,请问在类导向里怎么添加ondraw()函数?
热心网友
可以给控件添加一个 bool 变量,初始化的时候false,在绘图之前先检测那个变量的值
热心网友
加一个变量,监视控件是否点击.点击的时候,调用Invalidate