DoubleLi

qq: 517712484 wx: ldbgliet

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
上一页 1 ··· 386 387 388 389 390 391 392 393 394 ··· 474 下一页

2013年11月23日

摘要: 1、GDI名字的意义GDI Graphic Device Interface,我说不清和GUI有什么区别。可能一种针对设备,一种针对用户而言吧,反正以后都说GDI,也就是Windows的图形编程。2、设备描述上下文HDCHandle Device Context这个是关键的关键,可以理解成画图的环境,何谓环境,画板,纸,笔,尺寸,字体,颜色,区域等。反正包括你能想到的和未能想到的了。要画出不同的图形,很大程度上是对HDC的修改。3、HDC的创建方式WM_PAINT消息来的时候,用:hdc = BeginPaint(hwnd, &ps);//......EndPaint(hwnd, &a 阅读全文
posted @ 2013-11-23 16:23 DoubleLi 阅读(692) 评论(0) 推荐(0)

摘要: 全屏显示是一些应用软件程序必不可少的功能。比如在用VC++编辑工程源文件或编辑对话框等资源时,选择菜单“View\Full Screen”,即可进入全屏显示状态,按“Esc”键后会退出全屏显示状态。 在VC++6.0中我们用AppWizard按默认方式生成单文档界面的应用程序框架。下面将先讨论点击菜单项“View\Full Screen”实现全屏显示的方法,再讲述按“Esc”键后如何退出全屏显示状态。 1) 在CMainFrame类中,增加如下三个成员变量。 class CMainFrame : public CFrameWnd { private: //自己添加的三个成员变量 WI... 阅读全文
posted @ 2013-11-23 15:19 DoubleLi 阅读(954) 评论(0) 推荐(0)

摘要: //删除标题和边框WS_CAPTION和WS_BORDER风格ModifyStyle(WS_CAPTION, 0);ModifyStyle(WS_BORDER, 0); 阅读全文
posted @ 2013-11-23 15:18 DoubleLi 阅读(414) 评论(0) 推荐(0)

摘要: // TOOLTIPWND.H 添加气球式提示栏#if !defined(AFX_TOOLTIPWND_H__2C52D3E4_2F5B_11D2_8FC9_000000000000__INCLUDED_)#define AFX_TOOLTIPWND_H__2C52D3E4_2F5B_11D2_8FC9_000000000000__INCLUDED_#if _MSC_VER >= 1000#pragma once#endif // _MSC_VER >= 1000// ToolTipWnd.h : header file//// Written by Shankar (sshank 阅读全文
posted @ 2013-11-23 15:16 DoubleLi 阅读(1214) 评论(0) 推荐(0)

2013年11月22日

摘要: 前言:从这学期开始就一直在学习自绘控件(mfc),目标是做出一款播放器界面,主要是为了打好基础,因为我基础实在是很烂....说说我自己心得体会以及自绘控件的方法吧,算是吐槽吧,说的不对和不全的地方,或者有更好的方法,请不吝赐教。我的机器环境是:Windows7旗舰版 Service Pack 1,Visual studio 20051).重绘某个控件时,强烈推荐使用子类化方法,比如想自绘Button控件, 首先添加自己的类CMYButton 继承自 CButton ,声明一个CMYButton 对象,然后使用 SubclassDlgItem(UINT nID, CWnd* pParent ); 阅读全文
posted @ 2013-11-22 16:10 DoubleLi 阅读(11155) 评论(1) 推荐(0)

摘要: 随着Microsoft凭借Windows在操作系统上取得的巨大成绩,Windows用户界面也日益成为业界标准。统一的界面给广大用户对应用软件的学习与使用带来了很大方便。但每天都面对同一副面孔,日久天长难免会产生一些厌倦,想开发一些"离经叛道"的应用程序,如果能够一改Windows千篇一律的"标准"界面,一定会给用户带来一种清新的感觉。标准Windows应用程序窗口一般为带有标题栏的浅灰色矩形外观,因而"异形"对话框/窗口也主要是颜色与外形上动手脚。本实例实现了一个"精灵"窗口,程序编译运行后的界面效果如图一所示:图 阅读全文
posted @ 2013-11-22 16:08 DoubleLi 阅读(882) 评论(0) 推荐(0)

摘要: 前一阵突然想起了9月份电面某公司实习时的二面题,大概就是说怎么用Win32 API实现一个透明的窗口,估计当时我的脑残答案肯定让面试官哭笑不得吧。所以本人决定好好研究下这个问题。经过一下午的摸索,基本掌握了使用Win32 API创建各种匪夷所思的窗口的基本思路。(以下文字基于本人的个人理解,由于本人技术和经验原因不保证正确性,希望各位不吝指正)首先我们需要了解一些基础知识。1、Layered Windows。这是Windows2000开始引入的新概念,重新定义了窗口的Hit Testing方法,以前都是把窗口按rectangle的方式裁剪,而把窗口加上WS_EX_LAYERED的Style后就 阅读全文
posted @ 2013-11-22 15:52 DoubleLi 阅读(5602) 评论(0) 推荐(0)

摘要: 前面提到,我们可以用SetWindowRgn或SetLayeredWindowAttributes实现不规则以及半透明的效果对于SetWindowRgn,它通过一个Rgn来设置区域,这个Rgn一般可以从图片中读取,在这张图片中,将不需要显示的区域标记为一种特殊的颜色,这里有个问题,必须保证这种颜色没有被正常的区域使用,否则会被误伤。为了解决这个问题,可以考虑用两张图片,增加一张单色的掩码图,这种方案带来了额外的管理开销。SetWindowRgn的好处是效率较高,对于大部分自绘的皮肤,一般只有四个角落有一些不规则,所以用SetWindowRgn是最好的选择。SetLayeredWindowAtt 阅读全文
posted @ 2013-11-22 15:49 DoubleLi 阅读(9062) 评论(0) 推荐(0)

摘要: (声明:Alberl以后说到开源库,一般都是指著名的、或者不著名但维护至少3年以上的。那些把代码一扔就没下文的,Alberl不称之为开源库,只称为开源代码。这里并不是贬低,像Alberl前面那个系列的教程《2013 duilib入门简明教程》,还有本系列教程,还有前面介绍的CodeProject,基本上都是代码往上面一扔,就不用再怎么维护的。这些都称之为开源代码,其实开源代码对新手的帮助更大,因为很简明的说明了代码用法~O(∩_∩)O~) 前面两个教程已经对制作界面的几种方式进行了比较,权威界面库已经比较过了,那么接下来就是上一个教程介绍的那三种方式。 而上一个教程已经说的很明确了,用那三.. 阅读全文
posted @ 2013-11-22 15:40 DoubleLi 阅读(31060) 评论(3) 推荐(2)

摘要: 代码下载:http://download.csdn.net/detail/qq316293804/6502879迅雷播放器教程汇总:仿迅雷播放器教程 -- 基于ffmpeg的C++播放器 (1)仿迅雷播放器教程 -- 媒体播放器对比 (2)仿迅雷播放器教程 -- 媒体播放三大底层架构简析 (3)仿迅雷播放器教程 -- 基于VLC的C++播放器 (4)仿迅雷播放器教程 -- 封装VLC (5)仿迅雷播放器教程 -- 基于VLC的MFC播放器 (6)仿迅雷播放器教程 -- 十年经验大牛对MFC的认识 (7)仿迅雷播放器教程 -- 权威界面库对比 (8)仿迅雷播放器教程 -- C++界面制作方法的对 阅读全文
posted @ 2013-11-22 15:35 DoubleLi 阅读(972) 评论(0) 推荐(1)

上一页 1 ··· 386 387 388 389 390 391 392 393 394 ··· 474 下一页