- 博客(18)
- 收藏
- 关注
原创 MFC VC中使菜单项变灰
一、没有UpdateCmdUI句柄时MFC中缺省的习惯是当没有UpdateCmdUI句柄时程序是使能(Enable)菜单,菜单自动变成使能,只要关掉缺省值就可以了,把下面的代码加入你的程序 CMainFrm::CMainFrm { // Other stuff this->m_bAutoMenuEnable = false; } 然后在消息响应函数中添加如下代码:
2009-07-27 21:14:00 917 1
原创 MYSQL开启错误日志的方法
mysql有以下几种日志: 错误日志: -log-err 查询日志: -log 慢查询日志: -log-slow-queries 更新日志: -log-update 二进制日志: -log-bin 在mysql的安装目录下,打开my.ini,在后面加上上面的参数,保存
2009-07-26 08:29:00 5364
原创 设置工具栏图标背景颜色为透明
m_imgToolBar.Create( 32, 32, ILC_MASK | ILC_COLOR32, 6, 0 );CBitmap bm;bm.LoadBitmapW( IDR_MAINFRAME );m_imgToolBar.SetBkColor( ::GetSysColor( COLOR_BTNFACE ) );//第二个参数为图片背景颜色m_imgToolBar.Ad
2009-07-22 01:57:00 3324
原创 给工具栏上的按钮添加文字(VC)
转自 http://blog.csdn.net/learnhard/archive/2008/03/16/2187422.aspx 详见:MSDN里的CToolBar::SetSizes函数中的示例,摘抄如下:// 这个例子演示了如何将文字添加到工具栏按钮上int CMainFrame::OnCreate(LPCREATESTRUCT lpC
2009-07-21 05:33:00 2070
原创 VC中工具栏按钮文字及左右排列设置方法
BOOL CMainFrame::CreateSysToolBar() { m_wndToolBar.ModifyStyle(0, TBSTYLE_LIST | TBSTYLE_AUTOSIZE | TBSTYLE_FLAT |CBRS_TOOLTIPS | TBSTYLE_TRANSPARENT|TBBS_CHECKBOX ); //改变工具栏属性 m_ilTB.Create(3
2009-07-21 05:00:00 3476
原创 修改MFC窗口标题的最简单方法
在应用程序类中加入如下代码: BOOL CClientApp::InitInstance(){ if (!ProcessShellCommand(cmdInfo)) return FALSE; m_pMainWnd->SetWindowTextW( _T( "窗口标题" ) );} 注意:SetWindowText必须在Proc
2009-07-20 20:54:00 971
原创 设置视图背景颜色
BOOL CTestView::OnEraseBkgnd(CDC* pDC){ // TODO: 在此添加消息处理程序代码和/或调用默认值 /* 视图背景颜色 */ CRect rect; CBrush brush; brush.CreateSolidBrush( RGB( 242, 240, 239 ) ); pDC->GetClipBox(rect); pDC-
2009-07-15 18:52:00 790
原创 windows窗口样式
/* 窗口样式参考列表:WS_POPUP - 弹出式窗口(不能与WS_CHILDWINDOW样式同时使用)WS_CHILDWINDOW - 子窗口(不能与WS_POPUP合用)WS_MINIMIZE - 最小化状态WS_VISIBLE - 可见状态WS_DISABLED - 不可用状态WS_CLIPSIBLINGS - 使窗口排除子窗口之间的相对区域WS_CLIPCHI
2009-07-15 17:53:00 1097
原创 windows线程同步[CreateThread与_beginthreadex的不同之处]
来自:梦在天涯C++博客(http://www.cppblog.com/mzty/)一 线程1)如果你正在编写C/C++代码,决不应该调用CreateThread。相反,应该使用VisualC++运行期库函数_beginthreadex,退出也应该使用_endthreadex。如果不使用Micros
2009-07-14 02:08:00 2542
转载 W2A、OLE2A等 ATL 宏会引发 stack overflow。使用时注意。
最近一个转换文件的程序,在转换大批量文件是老是 stack overflow。查来查去。。原来是 在大循环中用了W2A和A2W两个宏。MSDN的 TN059: Using MFC MBCS/Unicode Conversion Macros 有描述,这两个宏在大循环中要有特殊的写法,不然保不准就 stack overflow。Other ConsiderationsDo n
2009-07-10 10:30:00 1418
原创 非常规情况下的正则无法匹配问题
在C/C++中没有专门的正则库,所有只好使用第三方库,我首先选择的是boost的regex。虽说boost的regex类比较复杂,但在这之前我也用过,没出过问题。但这次却因一个小小的疏忽折腾了我两天。 程序的功能是从文件中读取字符串,接着从数据库读取正则表达式,却发现有几个正则表达式无法匹配,但用这些正则表达式到正则测试工具中又能够匹配。 首先我怀疑boost的中文匹配功能,所以将
2009-07-09 20:59:00 996 1
原创 CString和wstring互转
CString转std::wstringstd::wstring str = filename.GetString();std::wstring转CStringCString str( filename.c_str() );
2009-07-09 09:32:00 19754 1
原创 c++ boost正则使用
#include #include #include using namespace std;using namespace boost;/*搜索字符串中是否含有子字符串int main( int argc, char* argv[] ){ char *buf = "This is boost::regex example boost::regex";
2009-07-05 18:46:00 1755
原创 boost正则表达式匹配一次
#include "stdafx.h"#include #include #include #include #include using namespace std;using namespace boost;regex expression("^select ([a-zA-Z]*) from ([a-zA-Z]*)");int main(int
2009-07-05 15:12:00 723
原创 boost正则表达式多次匹配
#include "stdafx.h"#include #include #include #include #include using namespace std;using namespace boost;regex reg("a(//d*)b");int main(int argc, char* argv[]){ str
2009-07-05 15:09:00 942
原创 vc2005 中 CString转化int,int 转化CString
CString转int方法:CString h;int a=_ttoi(h); int转化CString方法:int a=1263;CString h;h.Format(_T("%d"),a);
2009-07-04 16:31:00 527
原创 VS2005下CString转char*的简单方法
方法一:CString cstring; USES_CONVERSION;char str[MAX_STRING];strcpy_s(str, MAX_STRING, W2A( cstring); 方法二: CString cstring;const char * constChar=(LPSTR)(LPCTSTR)cstring;
2009-07-02 08:47:00 862
原创 一个不错的MYSQL类
MYSQL官方提供了C API和MYSQL++,MYSQL++是一个C++类,比较完善,不过我折腾了半天也不会用,没办法,只好用C API了,我用MYSQL只是作一些简单的操作,数据量也不大,不想自己写,所以找了个现成的,功能也比较全,该类使用了STL技术。我找了好几个MYSQL类都运用了STL技术,我的C++学得烂,STL只会一点点,看来有空得补补基础了。 /* * project
2009-07-02 06:16:00 1052 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人