图形图像
文章平均质量分 57
chinayu2007
这个作者很懒,什么都没留下…
展开
-
在TCanvas上画图
将一幅图片,从文件中加载到TCanvas上去,代码如下: ::Graphics::TBitmap *bmp= new ::Graphics::TBitmap; bmp->Transparent = true;//是否透明 bmp->LoadFromFile("right1.bmp"); Canvas_->Draw(0,0,bmp); d原创 2014-12-26 08:43:04 · 1992 阅读 · 1 评论 -
封装GDI+函数库
在C++builder中使用GDI+的步骤有些麻烦,将常用的函数封装到一个DLL库中,直接调用。//---------------------------------------------------------------------------#define STRICT#include #include #include "math.hpp" #include原创 2015-04-29 08:25:02 · 2562 阅读 · 0 评论 -
自绘进度条TProgressbarControl类
#ifndef __TPROGRESSCONTROL__#define __TPROGRESSCONTROL__#include "gdi.h"#include enum TProgressbarControlStyle{oneStyle,twoStyle,threeStyle,fourStyle,fiveStyle};class TProgressBarControl :public原创 2015-09-17 21:52:24 · 1202 阅读 · 0 评论 -
自绘菜单
#ifndef __TPOPMENU__#define __TPOPMENU__class TPopmenuUI :public TPopupMenu{ private: TFont *m_pFntText; COLORREF m_clrNormal, m_clrHover, m_clrBreak, m_clrFrame; TCanvas *原创 2015-09-16 18:23:40 · 626 阅读 · 0 评论 -
仿360工具栏
原来写了一个控件,现在改成VCL类,感觉使用类有灵活性的优势,控件安装比较麻烦。在TWinControl控件类框架的基础上开发。#ifndef __TTOOLBOXCONTROL__#define __TTOOLBOXCONTROL__#include "gdi.h"typedef void __fastcall (__closure * MyOnClick)(int no);cl原创 2015-09-14 17:37:51 · 554 阅读 · 0 评论 -
C++builder自绘控件框架
#ifndef __switch1__#define __switch1__#include "gdi.h" //自定义GDI+函数库class TSwitchButton : public TGraphicControl{ private: int m_left; int m_top; int m_width; int m_he原创 2015-09-06 15:28:02 · 3424 阅读 · 0 评论 -
仿QQ自定义编辑框
外边框根据鼠标的移动显示出不同的颜色。内部的编辑区,则是偷懒使用的VCL的TEdit隐藏了边框,组合而成。基本上达到了QQ编辑框的效果。#ifndef __TWINEDITCONTROL__#define __TWINEDITCONTROL__#include "gdi.h"class TEditControl :public TCustomControl{ private:原创 2015-09-13 11:27:37 · 917 阅读 · 0 评论 -
GDI+在内存中绘图
为了防止画图闪烁,一般先将图像画原创 2014-11-06 09:00:01 · 2354 阅读 · 0 评论 -
C++builder中的内存DC
TCanvas * c; TRect r; r = TRect(0, 0, 18, 18); c = new TCanvas; c->Handle = CreateCompatibleDC(Canvas->Handle);//创建兼容的内存DC SelectObject(c->Handle, CreateCompatibleBitmap(Canvas->Handle, 18原创 2015-03-17 08:24:59 · 831 阅读 · 0 评论 -
炫彩界面库调用方法
炫彩界面库2012版在C++builer6中的可以直接调用,到是最新的2015版不能。主要是头文件不兼容。函数应该是标准的DLL函数。通过动态调用可以成功显示窗口。按照帮助文档的,调用步骤显示应该窗口如下: HINSTANCE XCGUI_Handle; XCGUI_Handle=LoadLibrary("XCGUI.dll"); //初始化库原创 2015-03-17 09:22:06 · 2548 阅读 · 0 评论 -
在内存中画图实现双缓冲
在C++builder中防止画图闪烁,一般原创 2014-10-31 09:03:05 · 648 阅读 · 0 评论 -
仿真LED数码管显示控件
在程序中要显示一些数字,简单的方法是用一个TLabel标签就可以,如果想增强一下效果,有点科技感。可以使用仿真数码管显示。笔者用C++builder6制作了一个控件。来模拟衡器大屏幕的显示过程。模拟LED数码管显示原理(一)基本显示过程:一个字符串,由多个数字组成(包括负号和小数点)一个数字有7种笔划,一个笔划有6个点和6条线.要画出笔划,先定位出6个点的相对位置,形成封闭图形,即可产原创 2014-12-13 18:59:49 · 4227 阅读 · 0 评论 -
仿360工具栏
继承TWinControl类,用GDI+画背景和图标。为什么要用的GDI+,而不用GDI或TCanvs呢?因为当鼠标在工具栏上滑对时,如果经过图标,需要产生一个动态焦点。如果要画出这种效果的话,需要在图标上铺上一个浅透明,在两侧画上深色的渐变阴影。这样有一点立体感。GDI+有相应的函数,相对方便。在窗口中响应点击事件如下:void __fastcall TForm1::Grap原创 2014-12-22 12:15:45 · 599 阅读 · 0 评论 -
gdi+内存绘图
#include "gdi.h"//自己封装的GDI+库::Graphics::TBitmap * bmp1;__fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner){ GdiInit(); bmp1 = new ::Graphics::TBitmap; bmp1->Width = 500;原创 2015-05-17 21:26:38 · 2293 阅读 · 0 评论 -
封装了一个TPlayGif插件
在工控软件中经常要用到动画显示设备状态。用GIF动画是比较常见的方法。如仪表,管道等。调用方法如下:1、TPlayGif.dll库是建立在VCL的基础之上的,所以仅能被delphi和C++builder2、工程中包含include文件夹中的文件: IDLLObject.h、IDLLControl.h3、SetLoop循环次数大于1000,表示无限循环4、对于帧画面边缘不固定原创 2016-09-10 08:20:46 · 630 阅读 · 0 评论