当前位置:首页 » 软件开发
开发技术指南» 文章正文
    引言: 有一种按键,看起来是一幅完整的图片,当鼠标移到按键区域时,图片的一部分凸现,形成一个按键,当鼠标移走时又恢复原来状态。
 

 

 ·在visual c++中实现特性表    »显示摘要«
    摘要:windows 95 以及windows nt 4.0 较之以前的windows 操作系统增加了许多先进特性,特性表就是其中一个。大家熟知的特性表的实例是windows 中屏幕显示属性的设置,它包括背景、屏幕保护程序、外观、设置等特性页。使用特性表的最大的好处在于它可以非常方便地将大量的信息提供给用户,从而有效地节省屏幕空间,因为它是包含若干个其它对话框的对话框。 创建特性表 ---- visua......
 ·主程序之前的版权窗口    »显示摘要«
    摘要:winapi winmain(hinstance, hinstance, lpstr, int) { dword ltime; try { application->initialize(); aboutbox=new taboutbox(aboutbox); aboutbox->borderstyle=bsnone; aboutbox->okbutton->visible......


在VC中透明浮动按键的实现
    有一种按键,看起来是一幅完整的图片,当鼠标移到按键区域时,图片的一部分凸现,形成一个按键,当鼠标移走时又恢复原来状态.

     最近,看了一些关于浮动按键的代码,其原理大致上跟cbitmapbutton差不多,用数幅位图代表按键的各个状态,响应鼠标的各种消息来设置按键的状态,实现按键的浮动显示,但是这样的按键却不能与周围的背景混与成一幅图片. 【程序编程相关:【原创】利用WM_COPYDATA实现进

【推荐阅读:点对点视频会议程序:VideoNet

     为了实现“透明”按键,可以简单地做个试验:先在对话框中加入一个button,通过属性框选“owner draw”风格,再加入一个picture,并加入图片,将button移到picture上.运行结果发现,按键没有显示出来,但在按键区域按下鼠标时,该按键仍然能发出wm_command消息,这样一个纯透明的按键建立了.显然,这个按键是毫无使用意义的,因为用户不知道按键的位置,必须让用户容易觉察到按键的位置,可以把这个按键改造一下: 【扩展信息:如何使用Zealware提供的SMGPA

     (首先从cbutton派生出一个新类cdrawbutton)

     ·把按键的标题显示出来

     这个实现起来比较简单,我们可以重载cbutton类的成员函数drawitem(),

void cdrawbutton::drawitem

(lpdrawitemstruct lpdrawitemstruct)

{

cdc dc;

crect rect=lpdrawitemstruct- >rcitem;//得到按键区域

cstring scaption;

dc.attach(lpdrawitemstruct- >hdc); //得到设备环境cdc

verify(lpdrawitemstruct- >ctltype==odt_button);

getwindowtext(scaption);//得到按键的标题

dc.setbkmode(transparent);//透明显示

cfont* m_poldfont=dc.selectobject(m_pfont);

dc.drawtext(scaption,&rect,dt_center|dt_vcenter|dt_singleline);

dc.selectobject(m_poldfont);

}

     其中的m_pfont是成员变量,它保存了对话框的字体指针,为了按键的标题风格与对话框的字体风格一致,在初始化时调用对话框的成员函数getfont()即可得到指向对话框字体的cfont类指针.
...   下一页
    摘要:信息产业部电子第二十二研究所青岛分所 郎锐 一、引言 在通常的以ceditview为基类的单文档/多文档视图程序中,可以很好的响应键盘输入的回车键,只需比较最近两次的输入的字符,看看最新输入的字符是否内码是13(0x0d,回车键的内码)即可识别出来,而要单独把一个编辑框放入对话框中却根本不响应,这个看似简单的问题在实际应用中还是解决起来比较困难的。尤其是当一个充当表单录入的对话框上有若干个编......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE