MFC
Wy_编程
千里之行,始于足下
展开
-
软件添加到右下角及不弹窗运行
添加到托盘原创 2022-04-27 19:33:29 · 135 阅读 · 0 评论 -
禁止软件重复打开
在 InitInstance()函数中添加test: 软件名称 HANDLE hMutex = CreateMutex(NULL, FALSE, _T("test")); DWORD res = GetLastError(); if (res == ERROR_ALREADY_EXISTS) { ::MessageBox(NULL, _T("软件已打开!"), _T(""), MB_ICONERROR); CloseHandle(hMutex); hMutex = NULL; re原创 2022-04-27 19:08:37 · 293 阅读 · 0 评论 -
程序设置开机启动
开机启动原创 2022-04-27 12:53:16 · 60 阅读 · 0 评论 -
MFC贴图
MFC贴图MFC贴图原创 2021-10-11 14:21:41 · 162 阅读 · 0 评论 -
CBCGPGridCtrl自适应列宽
CBCGPGridCtrl自适应列宽在这里插入代码片重写函数原创 2021-10-09 15:08:50 · 491 阅读 · 0 评论 -
TeeChart控件_动态创建
VS2010 使用TeeChart绘图控件原创 2021-09-17 17:07:14 · 525 阅读 · 3 评论 -
MFC Menu修改名称
Menu修改名称ModifyMenuW() CString cstr = L"菜单"; CMenu menu; menu.LoadMenu(IDR_MENU_POP); CMenu * pMenu; pMenu = menu.GetSubMenu(0); pMenu->ModifyMenuW(0, MF_BYPOSITION, ID值, cstr ); pMenu->EnableMenuItem(ID, MF_BYCOMMAND | MF_ENABLED); CPoin原创 2021-07-28 14:38:29 · 924 阅读 · 0 评论 -
MessageBox显示其他语言
结合上一篇MessageBox()高级用法MessageBoxEx()int WINAPI MessageBoxEx( _In_opt_ HWND hWnd, _In_opt_ LPCTSTR lpText, _In_opt_ LPCTSTR lpCaption, _In_ UINT uType, _In_ WORD wLanguageId);最后一个参数的意思就是我们需要用函数MAKELANGID(LANG_NEUTRAL, SUBLANG_NEUT原创 2021-07-02 13:38:53 · 211 阅读 · 0 评论 -
MessageBox()
函数原型:int MessageBox( HWND hWnd, LPCTSTR lpText, LPCSTR lpCaption,UINT uStyle );参数: hwnd: 父窗口的句柄,为NULL,说明消息框没有父窗口,大多数情况下可以省略不写 lpText: 指向要显示字符串的指针,对话框上显示的信息 lpCaption: 消息框的标题,即提示框上部分显示的内容 uStyle: 消息框的内容和形为(即该消息框有几个按钮、文本对齐等状态,原创 2021-07-02 10:29:42 · 94 阅读 · 0 评论 -
MFC工程 对话框移植
MFC 对话框的复制VS2015 将对话框dlg 资源复制到另外一个mfc工程下将A 工程下的Dlg 资源移植带B工程下方法:在这里插入代码片1 打开B工程2 将A工程也加载进来3 打开 A工程的.rc资源 找到要移植的Dlg 复制到B工程的.rc下4 将复制过来的dlg关联的类也复制到A工程(重点: 在复制过来的.h 文件中添加 #include "recouce.h" 头文件如果移植的比较多,就将 #include "recouce.h" 添加到 stdafx.h 头文件下)要注意原创 2021-05-01 16:45:19 · 498 阅读 · 0 评论 -
Static文本字体重叠的解决方案
关于Static文本字体重叠的解决方案每次跟新之前将文本设置为空在这里插入代码片CStatic mText;mText.SetWindowTextW(_T(""));CRect rc;mText.GetWindowRect(&rc);ScreenToClient(&rc);InvalidateRect(&rc);原创 2021-04-13 20:16:47 · 139 阅读 · 0 评论 -
C++时间转换
string 和CTime 转换string FormatTime(CTime tTime){ string strDate; char buffer[MAX_PATH] = { 0, }; sprintf_s(buffer, "%04d-%02d-%02d", tTime.GetYear(), tTime.GetMonth(), tTime.GetDay()); strDate = buffer; return strDate;}CTime FormatTime(string d原创 2021-04-07 19:32:55 · 1386 阅读 · 0 评论 -
CString 转char*
CString 转 char*方法一CString cstrStr;char * chStr;chStr = (char*)cstrStr.GetBuffer(0);方法二chStr= (char*)cstrStr.GetBuffer(cstrStr.GetLength());方法三chStr= (char*)(LPCTSTR)cstrStr;方法四string str = cstrStr;cstrStr.Format(_T("%s"),str );...原创 2021-03-05 19:43:39 · 2324 阅读 · 0 评论 -
MFC 自适应大小
MFC自适应大小一 在stdafx.h 中加入easysize.h 头文件找不到easysize.h 头文件的可以去我资源里面下载,不需要积分二 在Dlg.h 中加入 DECLARE_EASYSIZE 宏三 在OnInitDialog()中 加入 INIT_EASYSIZE; 宏四 添加响应函数类视图中找到对应的Dlg ,右键属性afx_msg void OnSize(UINT nType, int cx, int cy);afx_msg void OnSi原创 2020-09-07 19:25:08 · 748 阅读 · 0 评论 -
windows下创建进程
CreateProcess()函数CreateProcess是Windows下用于创建进程的API函数WINBASEAPIBOOLWINAPICreateProcessW( _In_opt_ LPCWSTR lpApplicationName, //可执行文件.exe _Inout_opt_ LPWSTR lpCommandLine, //命令行 _In_opt_ LPSECURITY_ATTRIBUTES lpProcessAttributes, _In_o原创 2021-03-16 20:29:06 · 365 阅读 · 0 评论 -
SQLAPI使用
MFC中使用 SQLAPI在这里插入代码片#include <SQLAPI.h>#pragma comment(lib, "sqlapiu.lib")//Connect 参数1 ,数据库连接字段 2数据库账号,3 密码,4数据库类型//Connect((LPCTSTR)DBString, (LPCTSTR)UserId, (LPCTSTR)Password, SA_SQLServer_Client); int main(int argc, char* argv[]){ CS原创 2021-03-15 20:40:02 · 668 阅读 · 0 评论