李sir_Blog

博客园 首页 联系 订阅 管理
  705 随笔 :: 58 文章 :: 134 评论 :: 193万 阅读

随笔分类 -  界面相關

摘要:经典OutlookBar 下面介绍一个OutlookBar自定义控件,原网址是:http://www.codeproject.com/KB/selection/csoutlookbar.aspx滚动栏ScrollBar 网址是:http://www.codeproject.com/KB/miscctrl/customscrollbar.aspxPickBox控件网站在http://www.codeproject.com/KB/miscctrl/CSPickBoxSample1.aspxGroupbox介绍此自定义控件的源网址是:http://www.codeproject.com/KB/mis 阅读全文
posted @ 2011-03-02 16:56 李sir 阅读(1183) 评论(0) 推荐(0) 编辑

摘要://return CDialog::OnEraseBkgnd(pDC);return TRUE;}接下来是在WM_PAINT的消息处理函数OnPaint()中添加代码。由于当背景位图比较大时,进行区域处理比较耗时,所以只在启动时进行一次处理。一种方法是OnInitDialog()处理,但这样会在从启动程序到窗口出现有相当的延迟,易引起程序尚未启动的误解。再一种方法就是在OnPaint()处理,但为了避免重复处理,可以加上一个判断标志。以下是OnPaint()的代码,正体为AppWizard生成,粗体为自己添加内容。void CTransDlg::OnPaint() {if (IsIconic( 阅读全文
posted @ 2011-01-13 13:53 李sir 阅读(927) 评论(0) 推荐(0) 编辑

摘要:随着Microsoft凭借Windows在操作系统上取得的巨大成绩,Windows用户界面也日益成为业界标准。统一的界面给广大用户对应用软件的学习与使用带来了很大方便。但每天都面对同一副面孔,日久天长难免会产生一些厌倦,开发一些“离经叛道”,一改Windows应用程序千篇一律的“标准”界面,一定会给你带来一种清新的感觉。标准Windows应用程序窗口一般为带有标题栏的浅灰色矩形外观,因而“异形”对话框/窗口也主要是颜色与外形上动手脚。1:改变背景颜色 改变对话框(窗口)的背景颜色是最简单的改变Windows应用程序外观的方法,根据Windows创建与管理机理,一般有两种方法。一种是处理WM_C 阅读全文
posted @ 2011-01-13 13:51 李sir 阅读(1055) 评论(0) 推荐(0) 编辑

摘要:CreateIC()和CreateDC()都获取设备描述表句柄,但用CreateDC()获取的能够进行绘画,而用CreateIC()获取的设备描述表,你却不能用它往设备上写东西,只能查询获取你所要的信息。测试代码如下: #includewindows.hLRESULTCALLBACKWndProc(HWND,UINT,WPARAM,LPARAM);intWINAPIWinMain(HINSTANCEhInstance,HINSTANCEhPrevInstance,PSTRszCmdLine,intiCmdShow){staticTCHARszAppName[]=TEXT("HelloWin 阅读全文
posted @ 2011-01-12 13:29 李sir 阅读(3154) 评论(0) 推荐(1) 编辑

摘要:http://blog.csdn.net/xianglitian/archive/2007/08/03/1724017.aspx 阅读全文
posted @ 2010-10-12 20:48 李sir 阅读(320) 评论(0) 推荐(0) 编辑

摘要:common control 4.7版本介绍了一个新的特性叫做Custom Draw,这个名字显得模糊不清,让人有点摸不着头脑,而且MSDN里也只给出了一些如风的解释和例子,没有谁告诉你你想知道的,和究竟这个特性有什么好处。 Custom draw可以被想象成一个轻量级的,容易使用的重绘方法(重绘方法还有几种,例如Owner Draw等)。这种容易来自于我们只需要处理一个消息(NM_CUSTOMD... 阅读全文
posted @ 2010-10-07 17:31 李sir 阅读(303) 评论(0) 推荐(0) 编辑

摘要:1. CListCtrl 风格 LVS_ICON: 为每个item显示大图标 LVS_SMALLICON: 为每个item显示小图标 LVS_LIST: 显示一列带有小图标的item LVS_REPORT: 显示item详细资料 直观的理解:windows资源管理器,“查看”标签下的“大图标,小图标,列表,详细资料”-----------------... 阅读全文
posted @ 2010-10-07 16:08 李sir 阅读(671) 评论(0) 推荐(0) 编辑

摘要:listctrl 显示位图,只要建立一个CImageList 和listctrl建立连接就可以了;下面详细步骤:1、在头文件里面:.hCImageList m_imagelist; //-----创建一个新的图像列表框;CBitmap bitmap1,bitmap2,bitmap3,bitmap4; //------创建几个位图;2.在实现文件里面:.cppm_showalarm.SetExten... 阅读全文
posted @ 2010-10-07 09:47 李sir 阅读(1376) 评论(0) 推荐(0) 编辑

摘要:在《一个图片加载与绘制类(使用GDI输出图片)》中我公布了基本的图片加载和绘制类,我们可以再根据这个类派生一些我们需要的新的绘制类,来针对某些特殊情况的绘制和使用,下面我再公布一个这样的类,作为样例。其中部分代码来源于互联网。一、头文件(CImageLoader.h)#include"EnBitmap.h"classCImageLoader:publicCEnBitmap...{public:BO... 阅读全文
posted @ 2010-08-09 13:24 李sir 阅读(796) 评论(0) 推荐(0) 编辑

摘要:这是一个图片加载与绘制的类,使用GDI将图片文件绘制到DC上,可以用于图片显示,程序换肤等应用场合。其中部分代码来源于互联网,代码作者不详,我只进行了改进和增补,如果来源作者看到,还望谅解。一、头文件(CEnBitmap.h)/**////////////////////////////////////////////////////////////////////////////// /// @... 阅读全文
posted @ 2010-08-09 13:22 李sir 阅读(2565) 评论(0) 推荐(0) 编辑

摘要:Windows GDI中有两个用来得到位图图像数据的API,分别是GetBitmapBits和GetDIBits;按照MSDN的解释,前者是用来得到设备独立位图的BITS,后者是得到兼容位图的BITS,所以在调用该函数的时候,第一个主要的区别是:GetDIBits需要提供一个设备内容,同时需要将位图的HANDLE选进这个设备内容(DC)才能能够得到位图的信息。我想上面的区别大家可能都知道,其实它还... 阅读全文
posted @ 2010-08-08 14:21 李sir 阅读(8803) 评论(0) 推荐(1) 编辑

摘要:先载入一张图片,ID为IDB_BITMAP2TestDlg.h中:CBrush m_brBk;//在public中定义TestDlg.cpp中:在初始化函数OnInitDialog()中加入:BOOL CTestDlg::OnInitDialog(){CDialog::OnInitDialog();CBitmap bmp;bmp.LoadBitmap(IDB_BITMAP2);m_brBk.Cre... 阅读全文
posted @ 2010-08-04 11:45 李sir 阅读(7187) 评论(0) 推荐(1) 编辑

摘要:到底我们怎样来欺骗Windows呢?我们主动来响应WM_NCHITTEST消息。用ClassWizard添加WM_NCHITTEST的消息响应函数。注:用ClassWizard添加消息响应函数时候,在右下角的“Filterformessageavailable to”选择“Windows”。否则你找不到WM_NCHITTEST消息。编写代码如下:UI... 阅读全文
posted @ 2010-08-04 11:43 李sir 阅读(3976) 评论(0) 推荐(0) 编辑

摘要:http://www.owlei.com/DancingWind/Course/Tutorial_01.htm这个网址是个牛人翻译的教程。很值得学习opengl编程指南——好书1:openGL开发环境配置OpenGL(全写Open Graphics Library)是个定义了一个跨编程语言、跨平台的编程接口的规格,它用于三维图象(二维的亦可)。OpenGL是个专业的图形程序... 阅读全文
posted @ 2010-06-24 10:26 李sir 阅读(1725) 评论(0) 推荐(0) 编辑

摘要:1:添加头文件:  #include <GdiPlus.h>  加载库文件:  #pragma comment(lib,"gdiplus.lib") //也可以在设置中添加  使用名字空间(可无):  using namespace Gdiplus;  定义用到的两变量:  GdiplusStartupInput m_gdiplusStartupInput;//gdi+版本信息、调试的... 阅读全文
posted @ 2010-06-24 09:24 李sir 阅读(3449) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示