运行效果 实现方法 1.给按钮加上BS_OWNERDRAW样式2.重载DrawItem函数,在这里绘制按钮3.关键之处就是把父窗口的背景复制到按钮上,实现视觉上的透明4.最后通过AlphaBlend实现半透明. 实现源码 // MyButton.h #pragma once // CMyButton class CMyButton : public CButton { DECLARE_DYNAMIC(CMyButton) public: CMyButton(); virtual ~CMyButt…
unit ColorButton; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, StdCtrls; type TColorButton = class(TButton) private //添加Color属性,默认clWhite { Private declarations } FColor:TColor; FCanvas:TCanvas; IsFocused:Boolean; procedur…
之前写过一个自绘的CListBox类,详细请参考http://blog.csdn.net/VisualEleven/archive/2010/10/12/5935430.aspx现在修改这之前的代码,使该CListBox能够支持多行显示的问题. // 重写DrawItem虚函数 void CNewListBox::DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct) { // TODO: Add your code to draw the specified i…
系统环境:Windows 10软件环境:Visual C++ 2013 SP1本次目的:使用位图按钮,并且设置按钮的鼠标悬停效果 在用MFC开发时,界面是比较不好开发的一块.VC中自带了CBitmapButton类,但是用途不多,网上很多Button类的派生类蛮实用的,但是若是简单的位图按钮用自带的CBitmapButton就可以实现了,以下是效果图: 步骤一:新建基于对话框工程,放置一个按钮,可以适当调整大小,设置其Owner Draw属性为TRUE,右键为按钮添加变量,改变其变量类型为CBi…
import java.awt.Color; import javax.swing.*; public class MyDraw { public static void main(String[] args) { //创建框架 JFrame myFrame=new JFrame("图画"); //myFrame.setLocation(200, 300);//第1参数表示离左屏幕边框距离,第2参数表示离屏幕上边框距离 myFrame.setSize(600, 400); myFram…
可以自由的给滚动条定义背景,上下按钮,当然不仅仅是颜色,连图片当背景也可以.支持鼠标滚轮,点击滚动条滚轴定位,上下按钮久按加速,兼容firefox,谷歌 下载地址…
C++类有继承时,析构函数必须为虚函数.如果不是虚函数,则使用时可能存在内在泄漏的问题. 假设我们有这样一种继承关系: 如果我们以这种方式创建对象: SubClass* pObj = new SubClass(); delete pObj; 不管析构函数是否是虚函数(即是否加virtual关键词),delete时基类和子类都会被释放: 如果我们以这种方式创建对象: 若析构函数是虚函数(即加上virtual关键词),delete时基类和子类都会被释放: 若析构函数不是虚函数(即不加virtual关…
首先一个简单的样例: int x; int f() { double x; cin >> x; return x; } 在上述代码中.函数f的局部变量x掩盖了全局变量x.这得从 "C++的名字查找机制"说起,首先.在函数f的局部作用域中查找.(甚至是语句块).假设不存在,到上一层的作用域再进行查找,... 该命名空间中查找,最后是全局作用域. 在类的继承体系中,名字覆盖问题也是非常困扰的.此处的"名字"但是是函数名,变量名,typedef, enum都能…
记录一个页面的功能: textview的占位符,字数统计,提交按钮的交互设置,具体效果图如下:…
没有访问控制符时默认为私有继承. 当基类中的某个函数有若干个重载版本,继承类中也实现了该函数的某个重载版本时,参数完全相同的基类版本被覆盖,基类的其他版本被隐藏. 1.若要在继承类中使用基类的被覆盖方法,用:: 如B继承A, B b;   b.A::fun(); 调用的就是被覆盖的基类方法 2.若要在继承类中使用基类的被隐藏方法:  b.A::fun(1,,2); 调用的就是被隐藏的基类方法 在B中声明 using A::fun; 3.在私有继承的派生类中把基类的公有函数转变为公有函数 在B中的…