上一页 1 ··· 5 6 7 8 9 10 11 12 下一页
摘要: 1、CSting->std::string如果不是unicode可以直接转换:CString cs("Hello");std::string s((LPCTSTR)cs);如果是unicode的话:CString cs ("Hello");CT2CA pszConvertedAnsiString (cs);std::string strStd (pszConvertedAnsiString); 2、 std::string->CString:std::string s("Hello");CString cs(s.c_str 阅读全文
posted @ 2013-06-13 00:43 紫清婷 阅读(500) 评论(0) 推荐(0) 编辑
摘要: 在MFC中将std::string转换为LPCTSTR的方法,在网上找了好久,终于被我发现了。http://blog.sina.com.cn/s/blog_6f7e64f801014sjo.html需要自己写一个转换函数:std::wstring StoWs(const std::string& s){int len;int slength = (int)s.length() + 1;len = MultiByteToWideChar(CP_ACP, 0, s.c_str(), slength, 0, 0);wchar_t* buf = new wchar_t[len];MultiBy 阅读全文
posted @ 2013-06-13 00:29 紫清婷 阅读(5439) 评论(0) 推荐(0) 编辑
摘要: 在这次项目中,需要实现语音播放功能。但是发现在播放语音时,无法进行其他操作。然后想到了多线程。可是从没有用过所谓的多线程,故在此记下自己第一次学习使用的多线程。首先,创建一个线程:void CLXTDlg::OnBnClickedButtonVoice(){ hThread = CreateThread( NULL, // SD 0, // initial stack size (LPTHREAD_START_ROUTINE)ThreadProc, // thread function NULL, ... 阅读全文
posted @ 2013-06-11 21:26 紫清婷 阅读(705) 评论(0) 推荐(0) 编辑
摘要: 想在线程里获取对话框上编辑框中的内容,我知道首先要获取主窗口的句柄,然后再获取控件的句柄。但百度了好久好久,都没有得到解决。直到看到下面这篇博客,才解决了我的问题。http://hi.baidu.com/magic_james/item/1298e9c486a7f26bf7c95d89实现办法如下:CString str;CWnd* h_d = AfxGetApp()->GetMainWnd(); //获取主窗口的句柄h_d->GetDlgItem(IDC_APOETRY_EDIT)->GetWindowText(str); //IDC_APOETRY_EDIT为编辑框的ID 阅读全文
posted @ 2013-06-11 21:12 紫清婷 阅读(561) 评论(1) 推荐(0) 编辑
摘要: 方法一:直接给CButton加图片。1.在资源编辑器中添加一个按钮,把它的Bitmap属性设为true2.在按钮上点右键,添加一个变量m_Btn(CButton类型的)3.将图片导入到资源管理器中,ID为IDB_BITMAP14.然后在初始化中加入如下代码:HBITMAPhBmp=::LoadBitmap(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDB_BITMAP1));m_Btn.SetBitmap(hBmp); 如果是加载非资源图片的话,就在初始化中加入下代码: HBITMAP hBitmap=(HBITMAP)::LoadImage( NULL,. 阅读全文
posted @ 2013-06-10 19:03 紫清婷 阅读(23267) 评论(0) 推荐(0) 编辑
摘要: 1、添加BMP格式的背景图片到“Bitmap”资源里。若无BMP格式的图片,可以通过画图等工具打开原图片后另存为BMP格式即可。2、在对话框的.cpp文件中找到:void CXXXDlg::OnPaint(),然后在if()...else()中的else()下添加如下代码: else { //CDialog::OnPaint();//要禁止这个调用 CPaintDC dc(this); CRect rect; GetClientRect(&rect); CDC dc... 阅读全文
posted @ 2013-06-10 18:22 紫清婷 阅读(756) 评论(0) 推荐(0) 编辑
摘要: 使用Tab Control 控件时,需要建子对话框。我想实现点击标签上的List Control控件时,主对话框上的编辑框控件能得到更新。然而List Control控件是在子对话框上。百度了好久,有人说主对话框不能处理子对话框的消息,即点击标签时无法通知主对话框。解决办法: 在子对话框中通过GetParent()获取主对话框的指针,然后就可以调用它的成员了。 注意:一般Tab控件的父窗口是主对话框,Tab控件子对话框的父窗口是Tab控件,所以现在Tab控件子对话框中获取父窗口(即Tab控件),然后利用Tab控件获取父窗口(即主对话框)。如下面代码:void CPoetrySortDlg::O 阅读全文
posted @ 2013-06-07 21:57 紫清婷 阅读(2151) 评论(0) 推荐(0) 编辑
摘要: 对于使用Tab Control 给对话框加属性页的方法有很多,下面记录下感觉比较方便点的方法。(也是来自网上的资料,只是稍加整理)首先需要自己建一个类,如:CTabSheet。这个类是从CTabCtrl继承来的,是用于Tab Control的控件类。添加成员变量: CDialog* m_pPages[MAXPAGE]; //记录各子对话框的指针 int m_nNumOfPages; int m_nCurrentPage; UINT m_IDD[MAXPAGE]; LPCTSTR m_Title[MAXPAGE];记得这个:#define MAXPAGE 20 //该类所能加载的标签的最大值然后 阅读全文
posted @ 2013-06-07 21:39 紫清婷 阅读(1836) 评论(0) 推荐(0) 编辑
摘要: 实现的功能:在单选列表视图控件中显示一个简单的编程语言排行榜,然后在用鼠标左键选择某列表项时,将选中列表项的文本显示到编辑框中。下面是具体实现步骤: 1. 创建一个基于对话框的MFC工程,名称设置为“Example29”。 2. 在自动生成的对话框模板IDD_EXAMPLE29_DIALOG中,删除“TODO: Place dialog controls here.”静态文本控件、“OK”按钮和“Cancel”按钮。添加一个List Control控件,ID设置为IDC_PROGRAM_LANG_LIST,View属性设为Report,即为报表风格,Single Selection属性设为Tr 阅读全文
posted @ 2013-06-06 00:29 紫清婷 阅读(1346) 评论(0) 推荐(0) 编辑
摘要: 昨天学习了Tab Control控件,可是了遇到问题:运行程序后,Tab Control 控件就是显示不出来。搞了很久都不知道咋回事,后来终于被我发现了问题所在。原来是因为Group Box 控件覆盖掉了我的Tab Control 控件。我之前是先拖进去一个Group Box控件,然后在Group Box控件的框里再放置了一个Tab Control控件的。这样运行出来就看不到Tab Control控件。解决办法是:先放置好Tab Control控件,然后再重新拖进一个Group Box控件,摆放好,这样Group Box控件就不会覆盖掉Tab Control控件了。 阅读全文
posted @ 2013-06-04 09:52 紫清婷 阅读(2119) 评论(0) 推荐(0) 编辑
上一页 1 ··· 5 6 7 8 9 10 11 12 下一页