让你的软件界面更漂亮(1)

我们使用过很多的软件, 给我们留下印象很深的是那些界面漂亮且迷人的软件, 国外的软件象QuickTime,国产的象金山词霸等,它们的软件界面设计风格都有独特之处。本人跟据自已的经验和大家探讨一下软件的漂亮界面实现的原理并提供DEMO程序。本人经验不多,经常从VCKBASE.COM吸取知识,共同学习,如有不足之处,请指正!也欢迎和我联系。下面就开始吧!

一、漂亮界面实现的原理

用图象元素自绘窗口标题样栏,边框,系统按钮(最大化、最小化、关闭按钮)还有按窗口中的控件。图象当然是美工画的,但要你教美工怎么去画,是不是不能理解? ,呆会我会告诉你你如何去教美工画.请先仔细看下图。

明白了吧,被红线包括的部分都是要画的图象。画得好不好会直接影响你的软件界面。

二、原理说玩了,来说一下实现的基本知识

1、VC软件绘图技术:

CBitmap* pBitmap = new CBitmap;
  BITMAP BmpInfo;
  CBitmap* pOldBitmap;
  CDC* pDisplayMemDC=new CDC;
  pDisplayMemDC->CreateCompatibleDC(pDC);
  pBitmap->LoadBitmap(IDB_TITLE_LEFT);
  pOldBitmap=(CBitmap*)pDisplayMemDC->SelectObject(pBitmap);
  pBitmap->GetBitmap(&BmpInfo);
  // x,y为绘图位置 ,必要时此语句要有For(..;..;..)控制
  pDC->BitBlt(x,y, BmpInfo.bmWidth, BmpInfo.bmHeight, pDisplayMemDC, 0, 0, SRCCOPY);
  pDisplayMemDC->SelectObject(pOldBitmap);
  pBitmap->DeleteObject();
  ReleaseDC(pDisplayMemDC);//记得执行以下的语句
  delete pDisplayMemDC;
  delete pBitmap;   

2、坐标的概念:点、窗口坐标和屏幕坐标及转换,很重要!如不清楚请先复习相关知识。

下图是我写在一个界面,就是基于上述原理实现的:

时间: 2024-08-31 17:54:05

让你的软件界面更漂亮(1)的相关文章

让你的软件界面更漂亮(2)

一.统一风格漂亮界面设计的理论与实现 a.窗口和对话框 Windows操作系中窗口和对话框在我们看来是一样的,就是一个四边形,有标题栏.系统按钮,边框等,可移动和可变大小.实际上窗口和对话框是有的区别的.在创建对话框窗口时的工作中要发生两个主要过程:对话框的过程和其窗口过程.Win32 SDK对话框使用了系统提供的对话框窗口的窗口过程和对话框过程,对话框过程将被窗口过程调用.在MFC下,所有的窗口类都使用了同一个窗口过程,对话框类也一样.MFC对话框过程只处理WM_INITDIALOG消息,其余

让你的软件界面更漂亮(五)

类WindowXp 开始菜单到现在基本上是完美实现,在功能上基本和WindowXp 与Vista 操作系统的开始菜单一样,界面当然漂亮,通过编程能实现风格多样,具有个性化的功能菜单.为了方便使用,本人对其进行了封装,库名曰:完美类WindowXp 开始菜单. 1.完美类WindowXp 开始菜单(CYisongStartMenu)有如下主要特点: a. 在C++环境实现,界面风格可实现自定义; b. 不仅适用Mouse 操作,还支持响应方向按键,快捷键功能; c. 可增加和删除菜单中的子项; d

让你的软件界面更漂亮(4)

漂亮界面的软件应该有漂亮的菜单,大家对 Windows XP 的开始菜单肯定不陌生吧,那种菜单独具风格.于是去研究了一下,发现其实它并不是真CMenu也不是其派生类,分析其结构发现其主要是两个 ListView.一个ToolBar.一个 Button 组成的.于是也写了个菜单类,但我并没有用 ListView 去实现,虽然不敢和 Windows XP相比,但我认为其是一种有个性的菜单,拿出和大家分享! 希望大家能写出有创新和自主产权的菜单.哈哈--.当然要先眼见为实如下图. 一. 实现原理 用

让你的软件界面更漂亮(3)

实现令人满意的风格统一的软件界面确实很难, 象网友提到的MessageBox.FileDialog.FontDialog.目录选择对话框等MFC内部甚至系统DLL内的对话框,要想让它变脸可不容易.有人说HOOK技术可以,HOOK技术确实可以,HOOK可以说是无孔不入,但HOOK的使用效率却是令人难以满意的,从目前大多数采HOOK技术的换肤软件使用情况来看,完全可以证明这一点.今天我们将讨论另外一技术来实现FileDialog的变脸,这种技术叫替换窗口过程法(注:本人杜撰). 窗口过程函数是大多窗

让你的软件界面更漂亮(六)仿QQ主界面之ListCtrl

QQ软件主界面的ListCtrl 是可以说非常经典了,一个字漂亮! 这个ListCtrl的所包含的信息之丰富,更是让我们这些软件工程师望Q兴叹! 今天,我将和大家一起来写一个属于自已的CMyListCtrl. 一.实现CMyListCtrl要完成的任务及实现方法分析. 1.MyListCtrl 显示彩色图片头像(在线用户头) 让CMyListCtrl 显示彩色图片作为头像很容易,用CImageList 加载规格相同的图片到其中,然后让CimageList和CMyListCtrl关联就可实现, 向

xhprof gui,让xhprof界面更漂亮,功能更强大

顾名思义,xhprof gui 就是一个xhprof的一个ui展现.作者hack了facebook发布的xhprof展现代码.使xhprof界面更漂亮,功能更强大. xhprof gui新增了如下特性: * 友好的界面 * 数据库存储(mysql) * 支持按请求百分比执行xhprof优化.降低服务器负载. * 支持相似url的概念.如:http://news.example.com/?story=23 http://news.example.com/?story=25 被视为相似url. 完整

让你的Photoshop操作界面更广阔

常用 Photoshop 的朋友可能都有这个感触,那就是在 Photoshop 面前,多大的屏幕也不够用.不管你的屏幕是 17 寸还是 19 寸的,只要一打开 Photoshop ,再打开一张图片,就会感觉屏幕上挤挤囊 囊 的.怎么回事呢?原来是那些工具面板在占据着大量宝贵的屏幕空间.如图 1 所示 图 1 那么能不能让这些工具面板也像 QQ 那样平时不用时自动隐藏,用的时候动动鼠标自己就能跳出来呢?答案是肯定的.这需要我们安装一个小软件-- Photoshop 界面助手.(点这里下载) [软件

【转载】为什么软件界面截图不存为jpg 而推荐png?

软件界面截图应保存为哪种图像格式?这其中大有学问.  png是软件截屏的最佳选择(体积最小:最清晰): jpg是根本错误的选择 :gif是可以接受的选择:bmp是最愚蠢的过时方案--绝大多数情况下,这些断言都是成立的. 简言之,软件截屏用png,别用jpg. 有人会问:jpg不是压缩比很大的格式吗?png和它相比,有什么优点?其实,根本不应该把png与jpg比,因为两者完全适合不同的场景.如果要比较,应该是png与gif比:而jpg并无特别适合的对比格式(或与jpg2000比).  jpg适用于

分享下手机软件界面设计浅析_其它相关

随着科技的不断发展,手机的功能俞之强大,基于手机系统的相关软件应运而生,手机设计的人性化已不仅仅局限于手机硬件的外观,手机的软件系统已成为用户直接操作和应用的主体,它应以美观实用.操作便捷为用户所青睐.用户界面设计的规范性显得尤为重要. 一.界面效果的整体性.一致性 手机软件运行于手机操作系统的软件环境,界面的设计应该是基于这个应用平台的整体风格,这样有利于产品外观的整合. 1.界面的色彩及风格与系统界面统一 软件界面的总体色彩应该接近和类似系统界面的总体色调,例如:系统色调以蓝色为主,我们的软