1,图片控件
右键属性 type : bitmap
你直接选image也行
IDB_BITMAP1位图的ID
m_ctrl 是与图片控件相关联的控制型变量
void CDlg2Dlg::OnButton1() { CBitmap bitmap1; bitmap1.LoadBitmap(IDB_BITMAP1); m_ctrl.SetBitmap(bitmap1); } void CDlg2Dlg::OnButton2() { CBitmap bitmap2; bitmap2.LoadBitmap(IDB_BITMAP2); m_ctrl.SetBitmap(bitmap2); }
2, 什么我给控件赋变量时看不到cortrol ID?
1,单选按钮,把group钩上.
2,静态控件把ID改成非IDC_STATIC.
3, 大小键盘的ascll码
0-9 不同,但+,-相同.
4,显示键盘输入的字符,尽量避免闪烁
void CSdiView::OnChar(UINT nChar, UINT nRepCnt, UINT nFlags) { CDC * pDC = GetDC(); StringData += nChar; CRect r(0,0,0,0); pDC->DrawText(StringData,&r,DT_LEFT|DT_CALCRECT); InvalidateRect(r); CView::OnChar(nChar, nRepCnt, nFlags); } void CSdiView::OnDraw(CDC* pDC) { pDC->DrawText(StringData,CRect(0,0,1000,1000),DT_LEFT); }
5,对话框A domodal()出一个对话框B,点击B一个按钮以后,要求调用A的类中的一个函数。
在b的响应函数中处理:
((A *)GetParent())->fun();
在b中inlcude A所在的文件
6, 删除文件夹及包含的文件
#include void DeleteDirFile(CString sPath) { WIN32_FIND_DATA fd; HANDLE hFind = ::FindFirstFile(sPath + "*.*",&fd); if (hFind != INVALID_HANDLE_VALUE) { while (::FindNextFile(hFind,&fd)) { //判断是否为目录 if (fd.dwFileAttributes&FILE_ATTRIBUTE_DIRECTORY) { CString name; name = fd.cFileName; //判断是否为.和.. if ((name != ".") && (name != "..")) { //如果是真正的目录,进行递归 DeleteDirFile(sPath + fd.cFileName + "//"); } } else DeleteFile(sPath + fd.cFileName); } ::FindClose(hFind); } RemoveDirectory(sPath); }
7, 改变控件字体的大小
LOGFONT logfont; CFont *pfont = m_ctrShowMessage.GetFont(); pfont->GetLogFont( &logfont ); logfont.lfHeight =logfont.lfHeight * 1.5; logfont.lfWidth = logfont.lfWidth * 1.5; CFont font; font.CreateFontIndirect(&logfont); m_ctrShowMessage.SetFont(&font);
8, 想用classwizard新建一个类,但发现baseclass一栏中没有我要的基类(CObList类)
class type : Generic
自己输入
9, CTypedPtrList lineList;
为什么VC报错:
c:/程序/scribble/scribbledoc.h(50) : error C2143: syntax error : missing ';' before '<'
# include "afxtempl.h"
是字符 l,不是数字1
10, 不提示成员函数,怎么办?
CString s1="dfdsf";
s1.
试一下以下三种方法:
1, Build->Clean, Build->ReBuildAll.
2,手动删除*.ncb
3,安装辅助工具vc_assist6
11, 我有6个Radio Box如何分成3组
将三个Radio Box的 Group点上
就分成三组了
与焦点顺序有关