- 热门文章:
- · VC雕虫小技集(五)
- · VC雕虫小技集(六)
- · VC雕虫小技集(七)
- · 编程语言的异同及选择
- · 流媒体学习笔记----配置一个编码进程
- · 流媒体学习笔记---------编码视频的预览
- · 在VC中动态改变菜单
- · VC++ ADO开发实践之一
- · VC++ ADO开发实践之二
- · VC++ ADO开发实践之三
- · VC++ ADO开发实践之四
- · VC++ ADO开发实践之五
VC雕虫小技集(四)
VC雕虫小技集(四)
1, 阅读程序常常要看此变量在那些地方值改变过
ctrl+f查找太麻烦
将此变量前加const
改变的地方报错
2, 看一个函数被那些函数调用.
方法:
1,调试状态下,view->debug window->call Stack
2,class view 的快捷菜单中选择called by
3, 在状态栏的最左边显示时间
static UINT indicators[] =
{
ID_SEPARATOR,//我们增加的
ID_SEPARATOR,
ID_INDICATOR_CAPS,
ID_INDICATOR_NUM,
ID_INDICATOR_SCRL,
};
int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
..... m_wndStatusBar.SetPaneInfo(1,ID_SEPARTOR,SBPS_NORMAL,60);
}
//菜单的响应函数
void CMainFrame::OnTest()
{
CTime t;
t = CTime::GetCurrentTime();
CString str = t.Format("%H - %M -%S");
m_wndStatusBar.SetPaneText(0,str);
}
4,模拟鼠标
::SetCursorPos((int)ptMouse->x,(int)ptMouse->y);
::mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);
::mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0);
::mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);
::mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0);
5,什么是WORD, DWORD
typedef unsigned short WORD
typedef unsigned long DWORD
6,移动控件
CWnd * pWnd = GetDlgItem(IDC_BUTTON1);
CRect r;
pWnd->GetWindowRect(&r);
r.left +=50;
r.right += 50;
pWnd->MoveWindow(r);
7, 如何让对话框中的CEdit响应ENTER键回车
GetDlgItem(IDC_EDIT1)->SetWindowText("111\r\n22");
右键属性
sytle -> Multiline选上
最好把want return 也选上
8,将c语言转化为汇编
VC++ provides this feature.
Project->Settings...
C/C++ tab
Category: Choose Listing Files
Listing file type:
select "Assembly with source code"
9,如何获得进程所消耗的CPU时间?
BOOL GetProcessTimes(
HANDLE hProcess,
LPFILETIME lpCreationTime,
LPFILETIME lpExitTime,
LPFILETIME lpKernelTime,
LPFILETIME lpUserTime
);
10,如何通过扩展名得到该扩展名所对应的图标?
SHGetFileInfo(path,
attr,
&sfi,
sizeof(SHFILEINFO),
SHGFI_USEFILEATTRIBUTES | SHGFI_ICON | SHGFI_TYPENAME);
如何在拉着对话框的边框改变大小时,让它成比例的变化.就像视频播放软件哪样
处理wm_sizing消息
void CTest 1Dlg::OnSizing(UINT fwSide, LPRECT pRect)
{
CDialog::OnSizing(fwSide, pRect);
if((fwSide==WMSZ_BOTTOM) || (fwSide==WMSZ_TOP))
pRect->right=pRect->left+(pRect->bottom-pRect->top)*2;
else
pRect->bottom=pRect->top+(pRect->right-pRect->left)*0.5;
}
- · VC++ ADO开发实践之六
- · VC++ ADO开发实践之七
- · 图像平滑滚动效果的VC实现
- · VC中给树形控件的图标加上工具提示
- · VC++实现拨号上网程序
- · C++关键字(static/register/atuo/extern/volatile/const)释疑
- · .Net中的反射使用入门
- · 站在面相对象角度小议C++
- · Learn c++ step by step
- · Learn C++ step by step(2)
- · C++中的文件输入/输出(6):一些有用的函数
- · 如何在自己的程序中加入宏的功能
- · 在应用程序中将OJB作为一个存储层使用(一)
- · 在应用程序中将OJB作为一个存储层使用(五)
- · 数据结构学习(C++)续——排序【3】交换排序
- · 也用 C++ 实现 Property 功能
- · 获取网页中的密码和文本输入框的内容
- · 提取网页所有链接
- · 平台+插件软件设计思想及基于COM的原型实现
- · 编写驱动拦截NT的API实现隐藏文件目录
- · 用Visual C++编写电子邮件程序
- · VC实现屏幕变暗效果
- · InstallShield6.3安装文件制作要点
- · GeoTiff探索成果总结
- · MapObject控件的使用之加入图层
- · 学好VC++的十大良好习惯
- · MapObject控件的使用之图层操作
- · C++的函数和模板函数
- · 使用c++实现Format函数
- · 读者——写者问题
- · MapObject控件的使用之符号绘制
- · 窗口的无效区域 演示程序
- · c++异常处理
- · 软件生态危机
- · 使用Sniffer截获流经本机网卡的IP数据包
- · 《深入浅出MFC》读书笔记(一,二)
- · 消息钩子函数入门篇
- · 利用HOOK拦截封包原理
