VC雕虫小技集(三)

简介: VC雕虫小技集(三)

1,固定窗口大小,最大值为(600,400),最小值也为(600,400).

void CMainFrame::OnGetMinMaxInfo(MINMAXINFO FAR* lpMMI)
{
    lpMMI->ptMaxTrackSize.x = 600;
       lpMMI->ptMaxTrackSize.y = 400;
       lpMMI->ptMinTrackSize.x = 600;
       lpMMI->ptMinTrackSize.y = 400;
       CFrameWnd::OnGetMinMaxInfo(lpMMI);
}

 

2,关闭对话框和窗口:

其实,一般窗口的销毁可以用DestoryWindow(),对话框的销毁可以用EndDialiog().

EndDialog(IDOK);

DoModal()的返回值为IDOK,但不会执行用户定义的OnOK.

只要发送WM_CLOSE消息,就会有响应的函数处理的。

SendMessage(WM_CLOSE);
PostMessage(WM_CLOSE);
void CTestDialog::OnButton1()
{    
       GetParent()->DestroyWindow();
}

窗口和对话框一起关

PostMessage(WM_QUIT);

SendMessage(WM_QUIT);//不行

无模式对话框用DestroyWindow();

EndDialog

你再打开原对话框就有问题

 

3,全局变量的使用:

C***App中定义一个CString

使用时

void CDlgDlg::OnButton2()
{
       ((CDlgApp*)AfxGetApp())->str = "test";
}

不要忘记了包含文件

 

4,如何让dos程序开机自动运行并且不显示

自动运行好解决,写注册表run值,

vc+windows2000

main改为winmain

 

5,清除自动密码历史记录

浏览器中:

工具->Internet选项->内容->"自动完成(U)"按钮->清除密码

http://tzsvc.xiloo.com/skill/sys/clear.htm

SHDeleteKey(HKEY_CURRENT_USER,

_T("Software//Microsoft//Internet Explorer//IntelliForms"));

 

6,执行一个可执行程序

方法一:

ShellExecute(this->GetSafeHwnd(),"Open","f://he.txt",NULL,NULL,SW_SHOWNORMAL );

方法二:

PROCESS_INFORMATION pi;
    STARTUPINFO si;
    si.cb = sizeof(STARTUPINFO);
    si.lpReserved = NULL;
    si.lpDesktop = NULL;
    si.lpTitle = NULL;
    si.dwFlags = 0;
    si.cbReserved2 = 0;
    si.lpReserved2 = NULL;
    BOOL bres = CreateProcess(NULL,"test a.txt b.txt",NULL,NULL,false,
                        NORMAL_PRIORITY_CLASS,
                        NULL,NULL,&si,&pi);
if(bres==false)
{
AfxMessageBox("CreateProcess failed");
}
else
{
CloseHandle(pi.hThread);
DWORD dwret=WaitForSingleObject(pi.hProcess, 1000*30);
switch(dwret)
{
case WAIT_OBJECT_0:
DWORD dwexitcode;
bres = GetExitCodeProcess(pi.hProcess,&dwexitcode);
TCHAR exitmsgbuf[1024];
if(bres)
{
wsprintf(exitmsgbuf,"exit code:%d",dwexitcode);
}
else
wsprintf(exitmsgbuf,"exit code failed to return");
AfxMessageBox(exitmsgbuf);
break;
default:
AfxMessageBox("exit for other reason");,
相关文章
|
存储 开发工具
|
C++ 索引 Windows
VC中的界面美化
本文专题讨论VC中的界面美化,适用于具有中等VC水平的读者。读者最好具有以下VC基础: 1. 大致了解MFC框架的基本运作原理; 2. 熟悉Windows消息机制,熟悉MFC的消息映射和反射机制; 3. 熟悉OOP理论和技术; 本文根据笔者多年的开发经验,并结合简单的例子一一展开,希望对读者有所帮助。
1204 0
Nokia 920板砖自救(理论上通用,升级Win10成板砖也可以用这个恢复)
异常处理汇总 ~ 修正果带着你的Net飞奔吧! http://www.cnblogs.com/dunitian/p/4599258.html 个人博客:http://dnt.dkill.net 下载下两个软件(下载地址在下面) Nokia教程: 按音量下键+电源键 进手机页面重装系统就可以了 ———————————————————————————————————————————————————————————————— WP其他手机: 进手机重新安装系统即可。
859 0

热门文章

最新文章