c++ MFC
小杰博客
这个作者很懒,什么都没留下…
展开
-
查找和替换字符串
void CSearchReplaceStrDlg::OnSearch() { // TODO: Add your control notification handler code here UpdateData(true); if(m_strFind.IsEmpty()) { AfxMessageBox("查找的字符串为空!"); return; } int pos=0; CString strpos,temp; strpos.Format("%s字符串在原字符串中的起始位置为:/n",m_str原创 2010-12-08 11:32:00 · 310 阅读 · 0 评论 -
屏幕显示项目之-----画好界面无闪烁,鼠标移到指定位置改变图标
<br /> else<br /> {<br /> //CDialog::OnPaint();<br /> CDC* pDC=GetDC();<br /> CRect rect,ellipserect;<br /> GetClientRect(&rect);<br /> CDC dcMem;<br /> CBitmap bmp;<br /> dcMem.CreateCompatibleDC(pDC);<br /> bmp.CreateCompatibleBitmap(pDC,rect.Wid原创 2010-12-22 13:58:00 · 771 阅读 · 0 评论 -
使用隐式方式调用DLL实现浮点数的四则运算
<br />在对话框类的实现文件的顶部加载库文件并声明DLL导入函数:<br />#pragma comment(lib,"FloatCallDLL.lib")//通知编译器DLL的.lib文件所在的路径及文件名<br />extern "C" _declspec(dllimport) float floatcalculate(float x,float y,int type);//声明导入函数<br /> <br />(FloatCallDLL.lib文件必须放在工程目录下,而不是debug目录)<br原创 2010-12-23 14:31:00 · 647 阅读 · 0 评论 -
设置控件背景色和字体颜色!!mfc
HBRUSH CMyDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) { switch (nCtlColor) { case CTLCOLOR_STATIC: case CTLCOLOR_DLG : case CTLCOLOR_EDIT : //在此加入你想要改变背景色的控件消息 pDC->SetBkMode(TRANSPARENT); HBRUSH B = CreateSolidBrush(RGB(255,0,0)); pDC->Set原创 2010-12-22 11:16:00 · 3502 阅读 · 0 评论 -
MFC设置字体及颜色
<br />MFC设置字体及颜色设置字体<br />函数原型:<br />BOOL CreateFont( int nHeight, int nWidth, int nEscapement, int nOrientation, int nWeight, BYTE bItalic, BYTE bUnderline, BYTE cStrikeOut, BYTE nCharSet, BYTE nOutPrecision, BYTE nClipPrecision, BYTE nQuality, BYTE nPitc原创 2010-12-22 08:49:00 · 1049 阅读 · 0 评论 -
mfc制作具有动画效果的字体,可以设置字体
<br />void CMyView::OnDraw(CDC* pDC)<br />{<br /> CMyDoc* pDoc = GetDocument();<br /> ASSERT_VALID(pDoc);<br /> // TODO: add draw code for native data here<br /> CRect rect;<br /> GetClientRect(rect);<br /> pDC->Ellipse(rect.Width()/2-200,rect.Height()/2-2原创 2010-12-22 13:42:00 · 1303 阅读 · 1 评论 -
使用显示方式调用DLL实现浮点数的四则运算
先说下我们的调用代码:在初始化中:GetDlgItem(IDC_Num2)->SetWindowText(""); GetDlgItem(IDC_result)->SetWindowText("0");在主要实现函数中:void CUseFloatCallDLLDlg::OnCal() { typedef float (*MyCalculate)(float ,float,,int );//宏定义floatcalculate函数指针类型 HINSTANCE hdll; //DLL的句柄Mycalcu原创 2010-12-23 13:53:00 · 894 阅读 · 0 评论 -
用模块定义文件的方法调用DLL,获取其导出的全局变量值
<br />在ExternVarDll.def中添加:<br /> <br />;在DLL中导出变量<br />LIBRARY "ExternVarDll"<br />DESCRIPTION "实现一个导出变量的DLL"<br />EXPORTS<br /> myVar DATA<br /> <br />在ExternVar.cpp中添加:<br />#include "ExternVar.h"<br />#include "Windows.h"<br />char* myVar;<br />//D原创 2010-12-23 15:27:00 · 1914 阅读 · 2 评论 -
用隐式方法调用一个计算长方体表面积和体积的类
<br />实现函数下:<br />在对话框的头文件下:<br />#include "AreaVolumnClass.h"<br />#pragma comment(lib,"ExportClassDll.lib")<br />#if _MSC_VER >1000<br />#pragma once<br />#endif // _MSC_VER >1000<br /><br />///////////////////////////////////////////////////////////////原创 2010-12-23 17:43:00 · 846 阅读 · 0 评论 -
创建记录键盘动作的全局钩子DLL
Hookkey中:在Hookkey.h文件中:#define DllExport __declspec(dllexport)DllExport void WINAPI OutEv();//声明导出函数在实现文件中:#include"Hookkey.h"HHOOK Hook;LRESULT CALLBACK Hookkey(int nCode,WPARAM wParam,LPARAM lParam);void Savekey(char* c);LRESULT CALLBACK Hookkey(int nCo原创 2010-12-24 15:50:00 · 428 阅读 · 0 评论 -
输出字模的函数
<br /> /*输出字模的函数*/<br /> unsigned char pdata[]={<br /> 0x00,0x00, 0x10,0x90, 0x10,0x94, 0x13,0xFE, <br /> 0x7C,0x90, 0x11,0xFC, 0x19,0x04, 0x35,0xFC, <br /> 0x35,0x04, 0x51,0xFC, 0x50,0x40, 0x17,0xFE, <br /> 0x10,0x90, 0x11,0x08, 0x16,0x06, 0x00,0x0原创 2010-12-27 17:41:00 · 747 阅读 · 0 评论 -
创建MFC常规dll,通过导出函数显示颜色信息对话框
<br />在实现文件中添加:<br />void CUseDlgRegularDllView::OnLButtonDblClk(UINT nFlags, CPoint point) <br />{<br /> // TODO: Add your message handler code here and/or call default<br /> typedef void (*PFDlgShow)(int,int,int);<br /> HINSTANCE hdll;<br /> PFDlgShow d原创 2010-12-24 09:40:00 · 703 阅读 · 0 评论 -
汉字dianzheng算法
tagPOINT xx; xx.x = 40; xx.y = 40; // 点的颜色值 COLORREF cr; cr = 100; FILE *fp; if ((fp = fopen("hzk16", "rb")) == NULL) { MessageBox("Can not find file 'HZK16'", "Error"); return; } char *s, buffer[16][2]; CString m_sin="好人啊"; s = (LPTSTR)(LPCTSTR)m_sin;原创 2010-12-26 17:16:00 · 450 阅读 · 0 评论 -
模拟鼠标,指定时间
<br />void CMyDlg::OnTimer(UINT nIDEvent) <br />{<br /> // TODO: Add your message handler code here and/or call default<br /> UpdateData(TRUE);<br /> str1=m_year+"-"+m_month+"-"+m_day+" "+m_hour+":"+m_minute+":"+m_second;<br /> CTime CTime1=CTime::Get原创 2010-12-25 02:02:00 · 398 阅读 · 0 评论 -
项目小结
<br />void CMyDlg::OnMouseMove(UINT nFlags, CPoint point) <br />{<br /> // TODO: Add your message handler code here and/or call default<br />// Invalidate();<br /> if(((point.x-500)*(point.x-500)+(point.y-200)*(point.y-200))<=10000)<br /> {<br /> if((poin原创 2010-12-27 15:22:00 · 321 阅读 · 0 评论 -
使用键盘关掉窗口的方法
void CMy2View::OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags) { // TODO: Add your message handler code here and/or call default if(nChar==0x51)//0x51代表q的ASCII码,键盘的ASC码在.../VC98/Include/WINUSER.H文件中,原创 2011-06-15 21:34:00 · 1053 阅读 · 0 评论 -
对对碰鼠标点击--随机版
//定义客户端和鼠标坐标全局变量int width,height,x,y,x00,y00;HWND myhwnd;//定义鼠标坐标等信息WINUSERAPIVOIDWINAPImouse_event( DWORD dwFlags, DWORD dx, DWORD dy, DWORD dwData, DWORD dwExtraInfo);//回调函数BOOL CALLB原创 2011-06-15 21:32:00 · 1136 阅读 · 0 评论 -
开机自启,始终在最前面
//开机启动函数void CCommWizardDlg::OnBnClickedCheckStart(){ CString str; //添加注册表路径 WCHAR* CurrentPath= new WCHAR[sizeof(WCHAR)*100];//程序当前路径HKEY hRegKey; //注册keyBOOL bResult; //打开注册表返回值原创 2011-12-12 14:11:04 · 1231 阅读 · 0 评论 -
实现屏幕色彩渐变
<br />#include “stdlib.h"<br /> <br />void CMyView::OnDraw(CDC* pDC)<br />{<br /> CMyDoc* pDoc = GetDocument();<br /> ASSERT_VALID(pDoc);<br /> CRect rc;<br /> GetClientRect(&rc);<br /> for(int i=0;i<1000;i++)<br /> {<br /> int cx=MapRand(rc.Width());<br原创 2010-12-21 20:23:00 · 895 阅读 · 1 评论 -
MFC下的绘图操作基础
<br />先认识一下MFC中的一些和绘图有关的结构体和类 <br />1.点 <br />(1)点结构POINT点数据结构POINT用来表示一点的x、y坐标: <br />typedef struct tagPOINT { <br /> LONG x; <br /> LONG y; <br />} POINT; <br /><br />(2)点类CPoint <br />点类CPoint为一个没有基类的独立类,封装了POINT结构,有成员变量x和y <br />其构造函数有5种: <br转载 2010-12-17 15:40:00 · 598 阅读 · 0 评论 -
制定字符分割字符串(逻辑上还有一定问题)
<br />void CDecodeStringDlg::OnDecode() <br />{<br /> // TODO: Add your control notification handler code here<br /> UpdateData(true);<br /> CStringArray dest;//CString数组类<br /> char division=m_strDivision.GetAt(0);//获取分割符<br /> StringDecode(m_strOrigin, d原创 2010-12-09 13:48:00 · 380 阅读 · 0 评论 -
让你点击的蛋疼!!!!(加强版)
<br />void CMyDlg::OnChoujiang() <br />{<br /> // TODO: Add your control notification handler code here<br /> UpdateData(true);<br /> int i=0,j=0;<br /> while(i<5)<br /> {<br /> char Source[]="恭喜你中奖了! 马上抽奖! 准备好了吗? 不要太激动了~ 本次奖品丰富 想知道是啥吗? 想知道的话就往下点吧。。 呵呵 哈哈原创 2010-12-09 17:26:00 · 456 阅读 · 0 评论 -
隐藏进程,不被任务管理器发现
<br />void CMyDlg::OnTimer(UINT nIDEvent) <br />{<br /> typedef DWORD (*LPREGISTERSERVICEPROCESS)(DWORD, DWORD); <br /> CDialog::OnTimer(nIDEvent);<br /> if(nIDEvent==0)<br /> {<br /> HINSTANCE hDLL;<br /> LPREGISTERSERVICEPROCESS lpRegisterService原创 2010-12-09 23:02:00 · 5347 阅读 · 1 评论 -
让你点击点得郁闷!!!mfc
<br />void CMyDlg::OnFenge() <br />{<br /> // TODO: Add your control notification handler code here<br /> UpdateData(true);<br /> <br /> char strs[] = "wa、|ng|d|f||gh|f|f|f| char strs[] = wang|dfgg|fghggh|fff| char seps[] = char *token原创 2010-12-09 15:14:00 · 306 阅读 · 0 评论 -
你能抓到我吗?
<br />//鼠标移动响应函数<br />void CNewButton::OnMouseMove(UINT nFlags, CPoint point) <br />{<br /> // TODO: Add your message handler code here and/or call default<br /> <br />// m_pBtn->ShowWindow(SW_SHOW);<br /> ShowWindow(SW_HIDE);<br /> m_pBtn->ShowWindow(SW_S原创 2010-12-10 17:00:00 · 406 阅读 · 0 评论 -
MFC学习总结(不要奢望网上有源码,一切要自己联想与模仿!!!)
1、在指定的对话框中打印:GetDlgItem(IDC_xianshi)->SetWindowText("for(i=0;ivoid CNumToChineseDlg::OnTrans() { // TODO: Add your control notification handler code here UpdateData(true); m_strChineseCapital=ChineseCapitalMoney(m_dmoney); UpdateData(false);}2、CString 类中 读原创 2010-12-09 08:16:00 · 833 阅读 · 1 评论 -
MFC的背景图片导入
<br />背景图像加载很简单,你只需要做以下几步即可(假设你的登陆界面对话框类名叫“CLoginDlg”):<br />(1)菜单“Insert”->"Resource",选择Bitmap,然后点“Import...”,选择你的背景图像,然后假设该资源ID为“IDB_BITMAP1”;<br />(2)在LoginDlg.h下声明一个CBitmap m_BKbitmap;<br />(3)在LoginDlg.cpp的构造函数中:m_BKbitmap.LoadBitmap(IDB_BITMAP1);<br原创 2010-12-12 20:13:00 · 2894 阅读 · 0 评论 -
MFC窗口实现闪烁~~
<br />初始化:<br /> k=1;j=0;t=0;j1=0;j2=0;t2=0;<br /> GetDlgItem(ID_RADIO2)->ShowWindow(SW_HIDE);<br /> GetDlgItem(ID_hao)->ShowWindow(SW_HIDE);<br /> GetDlgItem(ID_STATIC1)->ShowWindow(SW_SHOW);<br /> <br /> GetDlgItem(ID_STATIC2)->ShowWindow(SW_HIDE);<原创 2010-12-13 09:32:00 · 898 阅读 · 0 评论 -
MFC 定时关机程序~~~
<br />void CGuanjiDlg::OnTimer(UINT nIDEvent) <br />{<br /> // TODO: Add your message handler code here and/or call default<br /> UpdateData(TRUE);<br />// SetTimer(2,1000,NULL);<br /> if(nIDEvent==2)<br /> {<br /> <br /> m_time=CTime::GetCurrentTime();/原创 2010-12-12 15:30:00 · 1545 阅读 · 0 评论 -
MFC关机小助手升级版
<br />//初始化 zhu,chong,guan=0;<br />void CMyDlg::OnTimer(UINT nIDEvent) <br />{<br /> UpdateData(true);<br /> <br /> if(nIDEvent==2)<br /> {<br /> <br /> str1=m_year+"-"+m_month+"-"+m_day+" "+m_hour+":"+m_mimute+":"+m_second;<br /> CTime CTime1=CTime::Ge原创 2010-12-12 17:55:00 · 590 阅读 · 0 评论 -
MFC关于窗口的有关操作
<br />MFC关于窗口的有关操作<br /> <br /> <br />窗口<br />让窗口一启动就最大化 <br />把应用程序类(CxxxApp)的 InitInstance() 函数中的<br />m_pMainWnd->ShowWindow(SW_SHOW); 改为<br />m_pMainWnd->ShowWindow(SW_SHOWMAXIMIZED);<br />则窗口一启动就最大化显示。 <br />如何设置窗口的初始尺寸 <br />在将应用程序类(CxxAPP)的 InitInst原创 2010-12-13 09:12:00 · 2506 阅读 · 1 评论 -
兴奋啊,原来mfc中的单文档和对话框的代码是通用的啊!!!画图程序
<br /> <br />//在单文档或对话框中的ondraw,onpaint函数中加入以下代码<br />CDC* pDC=GetDC();//定义pDC 单文档中可以不定义<br /> CPen pen[5];<br /> pen[0].CreatePen(PS_SOLID,3,RGB(255,0,0));//创建实线画笔<br /> pen[1].CreatePen(PS_DASH,1,RGB(0,255,0));//创建虚线画笔<br /> pen[2].CreatePen(PS_DOT,1原创 2010-12-15 21:13:00 · 3789 阅读 · 2 评论 -
用paint()函数实现在对话框中显示滚动字幕!
<br /> <br /> <br />//在对话框头文件中定义<br /> CString str;<br /> int WidthX;//输出文本的水平位置<br /> TEXTMETRIC tm;//字体结构<br /> <br />//在购造函数中赋初值<br />CScrollTextDlg::CScrollTextDlg(CWnd* pParent /*=NULL*/)<br /> : CDialog(CScrollTextDlg::IDD, pParent)<br />{<br /> //{{原创 2010-12-14 17:24:00 · 717 阅读 · 0 评论 -
双缓冲技术做到MFC绘图不闪烁!!
<br />首先我们先看下原来会闪烁的同心圆:<br /> // CDC* pDc = GetDocument();<br /> CDC *pDC=GetDC();<br /> <br /> ASSERT_VALID(pDoc);<br /> <br /> CPoint ptCenter;<br /> <br /> CRect rect,ellipseRect;<br /> <br /> GetClientRect(&rect);<br /> <br /> ptCenter = rect.原创 2010-12-16 13:13:00 · 1484 阅读 · 0 评论 -
mfc导入位图到指定地方,背景导入新方法
<br /> CDC *pDC;<br /> pDC=GetDC();<br /> CRect rect;<br /> GetClientRect(&rect);<br /> CBitmap wtj_bitmap;<br /> CDC dcMemory;<br /> <br /> wtj_bitmap.LoadBitmap(IDB_BITMAP2);<br /> BITMAP bmInfo;<br /> wtj_bitmap.GetObject(sizeof(bmInfo),&bmInfo)原创 2010-12-17 20:14:00 · 1117 阅读 · 1 评论 -
双缓冲技术成熟版!绘那个项目图,无闪烁
<br />在Onpaint函数中添加: <br />CDC *pDC=GetDC();<br /> <br /> CPoint ptCenter;<br /> <br /> CRect rect,ellipseRect;<br /> <br /> GetClientRect(&rect);<br /> <br /> ptCenter = rect.CenterPoint();<br /> <br /> CDC dcMem;原创 2010-12-16 21:41:00 · 565 阅读 · 0 评论 -
设置鼠标的光标!指定位置光标,按下左键右键时的光标
void CMyDlg::OnLButtonUp(UINT nFlags, CPoint point) { // TODO: Add your message handler code here and/or call default ::SetCursor(::LoadCursor(::AfxGetInstanceHandle(),MAKEINTRESOURCE(IDC_CURSOR1)));//自己做的鼠标光标 CDialog::OnLButtonUp(nFlags, point);}void CMyD原创 2010-12-17 00:28:00 · 2453 阅读 · 0 评论 -
开机启动版weighter
// CommWizardDlg.cpp : implementation file//#include "stdafx.h"#include "CommWizard.h"#include "CommWizardDlg.h"#include "SettingDlg.h"char* getResult(char strlast[]);long char2l原创 2011-12-13 09:09:56 · 870 阅读 · 0 评论