DoubleLi

qq: 517712484 wx: ldbgliet

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
上一页 1 ··· 445 446 447 448 449 450 451 452 453 ··· 474 下一页

2012年10月23日

摘要: 一、简单对话框全屏显示方法在OnInitDialog()中任意加入:1、ModifyStyle(WS_CAPTION,0,0); //如果不想去掉标题栏,去掉该句。 SendMessage(WM_SYSCOMMAND,SC_MAXIMIZE,0); 2、ShowWindow(SW_SHOWMAXIMIZED); 二、复杂一点的对话框全屏显示方法,随屏幕的分辩率而调节void CMainFrame::OnFullScreen() { GetWindowPlacement(&m_OldWndPlacement); CRect WindowRect; ... 阅读全文
posted @ 2012-10-23 20:53 DoubleLi 阅读(4763) 评论(0) 推荐(0)

摘要: CenterWindow()的用法为: void CenterWindow( CWnd* pAlternateOwner = NULL ); 其中参数pAlternateOwner指向所想居中的窗口的指针。 然后利用函数GetSystemMetrics( int nIndex )得到系统当前设置如屏幕分辨率等。 nIndexs= SM_CXSCREEN 时函数返回屏幕的宽度;返回值单位为像素点。 nIndexs= SM_CYSCREEN 时函数返回屏幕的高度;返回值单位为像素点。 函数BOOL GetWindowPlacement( WINDOWPLACEMENT* lpwndpl ) 是最重 阅读全文
posted @ 2012-10-23 20:53 DoubleLi 阅读(4428) 评论(0) 推荐(0)

摘要: MFC中可以用 SystemParametersInfo(……) 函数来获取和设置系统信息,如下面例子所示,改变的是系统菜单栏的高度。示例:改变系统菜单栏的高度NONCLIENTMETRICS ncm;ncm.cbSize = sizeof( NONCLIENTMETRICS ); //这个非常重要,否则下面函数调用将返回0,即ret=0,说明函数调用失败int ret=::SystemParametersInfo( SPI_GETNONCLIENTMETRICS,sizeof( NONCLIENTMETRICS ),&ncm,0);//CString str;//str.Format 阅读全文
posted @ 2012-10-23 17:34 DoubleLi 阅读(551) 评论(0) 推荐(0)

摘要: 1、加载两张位图:IDB_BITMAP1, IDB_BITMAP22、添加一全按钮,IDC_BUTTON1, 属性->样式:选上"所有者绘制"和"位图"。3、在对话框类中添加成员变量,类型为CBitmapButton ,变量名为m_BitmapBtn,全局变量或局部变量均可。4、在对话框类的DoDataExchange函数中添加代码,DDX_Control( pDX, IDC_BUTTON1, m_BitmapBtn );5、在对话框类的初始化函数中添加代码,m_BitmapBtn.LoadBitmaps(IDB_BITMAP1,IDB_BITMA 阅读全文
posted @ 2012-10-23 16:35 DoubleLi 阅读(723) 评论(0) 推荐(0)

摘要: 1、添加背景图片到“Bitmap”资源里。方法为“插入——资源”,如果还没有Bitmap,则新建一个Bitmap,否则选择资源类型为“Bitmap”后“引入”想要插入的背景图片,我加入的背景图片如图1,加入过程如图2。图1图2说明:引入的图片可以插入256色、16位色或更高色的图片,若是其他格式图片可用PS打开再另存为BMP、24位windows格式就可以了。提示说该资源使用了大于256色的调色板,在VC里无法编辑等等,点确定就可以了,没有影响的。 2、定位到void CXXXDlg::OnPaint(),在if()...else()中的else()下添加如下代码: else { //CDi. 阅读全文
posted @ 2012-10-23 16:34 DoubleLi 阅读(8169) 评论(0) 推荐(0)

摘要: 1、创建Application object对象theApp 程序一开始生产一个(且只有一个)Application object对象theApp,也即一个CWinApp对象,这个全局对象一产生,便执行其构造函数,因为并没有定义CMyWinApp构造函数,所以即执行CWinApp类的构造函数。该函数定义于APPCORE.CPP第75行,你可以自己搜出来啃一啃,因此,CWinApp之中的成员变量将因为theApp这个全局对象的诞生而获得配置与初值。2、WinMain登场 用SDK编程序时,程序的入口点是WinMain函数,而在MFC程序里我们并没有看到WinMain函数,哦!~ 原来她是被隐藏在 阅读全文
posted @ 2012-10-23 15:36 DoubleLi 阅读(5224) 评论(0) 推荐(3)

摘要: (1)Windows坐标系统Windows坐标系分为逻辑坐标系和设备坐标系两种,GDI支持这两种坐标系。一般而言,GDI的文本和图形输出函数使用逻辑坐标,而在客户区移动或按下鼠标的鼠标位置是采用设备坐标。<1>逻辑坐标系是面向DC的坐标系,这种坐标不考虑具体的设备类型,在绘图时,Windows会根据当前设置的映射模式将逻辑坐标转换为设备坐标。<2>设备坐标系是面向物理设备的坐标系,这种坐标以像素或设备所能表示的最小长度单位为单位,X轴方向向右,Y轴方向向下。设备坐标系的原点位置(0, 0)不限定在设备显示区域的左上角。 设备坐标系分为屏幕坐标系、窗口坐标系和客户区坐标系 阅读全文
posted @ 2012-10-23 15:35 DoubleLi 阅读(2241) 评论(0) 推荐(0)

2012年10月19日

摘要: 之前写过一篇博客:用 Fiddler来调试HTTP,HTTPS。 这篇文章介绍另一个好用的抓包工具wireshark,用来获取网络数据封包,包括http,TCP,UDP,等网络协议包。记得大学的时候就学习过TCP的三次握手协议,那时候只是知道,虽然在书上看过很多TCP和UDP的资料,但是从来没有真正见过这些数据包, 老是感觉在云上飘一样,学得不踏实。有了wireshark就能截获这些网络数据包,可以清晰的看到数据包中的每一个字段。更能加深我们对网络协议的理解。对我而言, wireshark 是学习网络协议最好的工具。阅读目录wireshark介绍wireshark不能做的wireshark V 阅读全文
posted @ 2012-10-19 14:16 DoubleLi 阅读(687) 评论(0) 推荐(0)

2012年10月18日

摘要: 对于没有任何源代码和PDB文件的预编译程序集而言,如果没有合适的工具,调试起来并不容易。使用Red Gate的.NET Reflector可以在Visual Studio中即时反编译程序集,然后像调试有源代码的程序集一样单步跟踪它。大家需要了解.NET Reflector(在VS和VSPro版本中)是可以集成到Visual Studio中的。标准的内置对象浏览器只显示公有方法和类(见图1),而.NET Reflector的对象浏览器(见图2)可以对编译好的程序集进行更为深入的分析,可以让用户浏览内部类、方法和代码。Red Gate .NET Reflector的Visual Studio插件能 阅读全文
posted @ 2012-10-18 15:05 DoubleLi 阅读(5397) 评论(0) 推荐(0)

摘要: 环境:vs2005+IE8IE8调用vs2005编写的ocx,断点无法进入。找了很长时间,仍然无法进入原因:IE8 /IE9默认是多进程工作的,所以默认情况下不能进行调试:解决方案: 关闭IE的保护模式,避免IE用多进程方式打开网页,否则调试器启动的IE进程跟网页所在的IE进程不同,就不能中断。通过修改注册表改为多进程工作的时候,启动的IE进程和加载要调试的ocx的IE进程不是一个进程,所以不能调试1. 点击【开始】->【运行】 命令:regedit.2. 定位到HKEY_LOCALMACHINE -> SOFTWARE -> Microsoft -> Internet 阅读全文
posted @ 2012-10-18 14:35 DoubleLi 阅读(461) 评论(0) 推荐(0)

上一页 1 ··· 445 446 447 448 449 450 451 452 453 ··· 474 下一页