常规标签页负责显示窗口句柄、窗口类名、标题文本、窗口矩形、窗口ID、进程ID和程序路径。控制其显示或改变应在CMyPic的WM_LBUTTONUP响应函函数中进行。代码如下:
((CPage0*)FromHandle(g_hPage0))->m_editHWND.SetWindowText(Display((int)g_hWnd)); char strClass[200]="\0"; ::GetClassName(g_hWnd,strClass,200); ((CPage0*)FromHandle(g_hPage0))->m_editCLASS.SetWindowText(strClass); ((CP...
Spy++阅读全文
选项卡控件中,5个标签页对应5个属性页对话框,与它们关联的类分别取名为CPage0、CPage1、CPage2、CPage3、CPage4。在CSpyXXDlg中建立私有成员变量m_page0、m_page1、m_page2、m_page3、m_page4。在其初始化过程中建立这5个属性页对话框:
m_page0.Create(IDD_OLE_PROPPAGE_LARGE,GetDlgItem(IDC_TAB1)); m_page1.Create(IDD_OLE_PROPPAGE_LARGE1,GetDlgItem(IDC_TAB1)); m_page2.Create(IDD_OLE_PROPPAGE_LARGE2,GetDlgIt...
Spy++阅读全文
VC中在listctrl中嵌入进度条,截图如下:
其实要实现这个非常容易,以下是自绘ListCtrl的代码,首先继承CListCtrl, 然后增加函数OnCustomDraw: void CProcessList::OnCustomDraw(NMHDR *pNMHDR, LRESULT *pResult) { //draw each item.set txt color,bkcolor.... NMLVCUSTOMDRAW* pLVCD = reinterpret_cast<NMLVCUSTOMDRAW*>(pNMHDR); // Take the default processing unless we set this to somet...
CListCtrl阅读全文
CRectTracker(俗称“橡皮筋”类)是一个非常有意思的类。你在Windows中经常看到这样的情况:它可以用做显示边界,你也可以扽它的八个角用来放大缩小,或做框选使用。如何通过编程来实现这种功能呢?这就是CRectTracker类的作用。
例子(源程序) 你打开上面的那个工程文件,编译运行一下。你将看到CRectTracker的几种功能; 下面让我们来从头做一个新的工程文件,来慢慢掌握它的功能吧。 建立一个单文档的工程文件,...
CRectTracker阅读全文
1,删除一个元素
比如:vector vecID; 中保存了m个ID,这时要删除第n个ID。
遍历是一个方法;即vector::itertor it = vecID.begin(); 然后++it n次。
更好的方法是:vector::itertor it = vecID.begin() + n; vector的迭代器直接支持这种偏移。
然后用vecID.erase(it)方法 删除该元素。
2.去除一个容器中有特定值的所有对象
1)如果容器是vector、string或deque,使用erase-remove惯用法,例如
c.erase(remove(c.begin(), c.end...
stl阅读全文