在“开始”按钮上面使用C++Builder的绘图方法

    作者:课课家教育更新于: 2017-01-12 18:45:30

    大神带你学编程,欢迎选课

      所谓绘图,就是绘制图片、图纸的意思。通常用于建筑绘图,产品绘制等等。大家在绘图的时候,一般都是使用相关的绘图软件吧。那么今天我们来学习一些新奇的绘图方式,在“开始”按钮上面使用C++Builder的绘图方法。

      对于一些经常接触到Windows操作系统软件设计开发人肯定会知道一点,那就是在Win95/98/NT/2000里面中有一个任务栏(即TaskBar,位于桌面最下方的小长条)应用程序。这个应用的路径如下所示:C:\\WINDOWS\\SYSTEM\\SYSTRAY.EXE(就假如说我们的Windows就安装在系统默认的路径C:\\WINDOWS)。

      那么我们先从系统功能这一个角度来分析一下吧,任务栏就是由几个不一样的子区域所组成,究竟是哪几个子区域呢?从左至右的顺序依次就是:开始(即Start)按钮、应用程序切换区(即applicationSwitchBar)、任务栏通知区(即NotificationArea)以及任务栏时钟这四个子区域。现在我们就从程序编制这一个角度来分析一下吧,任务栏应用程序(即SYSTRAY.EXE)和其它Windows应用程序一模一样的,是由几个不一样的窗体组成。在这些窗体中,具有各自不一样的句柄、显示方式以及窗口类名等提示信息。

      一、要点说明

      ①首先先介绍一下,开始按钮以及任务栏的窗口信息。具体的信息如下:

      ◆第一个开始按钮的窗口类名,具体的类名如下:Button

      ◆第二个任务栏的窗口类名,具体的类名如下:Shell_TrayWnd

      ②如果想要获取得到任务栏的窗口句柄的话,直接调用FindWindow函数就可以得到了。

      ③如果想要获取得到开始按钮窗口句柄的话,直接调用FindWindowEx函数就可以得到了。

      ④如果想要获取得到桌面窗口上下文关系以及开始按钮设备的话,直接调用GetDC函数就可以得到了。

      ⑤如果想要获取得到桌面窗口句柄,直接调用GetDeskTopWindow函数就可以得到了。

      ⑥如果想要获取得到当前的鼠标位置,直接调用GetCursorPos函数就可以得到了。

      ⑦如果想要将鼠标背景绘制在开始按钮上面的话,直接调用StretchBlt函数就可以得到了。

      ⑧如果想要释放桌面窗口上下文关系以及开始按钮的话,直接调用ReleaseDC函数就可以实现了。

      二、示范例子

      为了可以让大家更加深入的理解,小编特意找了一个示范例子演示给大家看,具体的示范例子如下:

      ①首先我们要做的就是在C++Builder5.0IDE中,重新建立一个工程,并将其命名为Project1,在Project1中会包含Form1。

      ②然后我们还要定义一下变量,具体的变量如下:

      HWNDwnd;

      HDChdcButton,hdcDesktop;

      TPointpt;

      ③在Form1里面的FormCreate过程代码,具体的编程代码如图所示:

    在“开始”按钮上面使用C++Builder的绘图方法_C++Builder_编程代码_软件设计_课课家

      ④在Form1里面的BitBtn1Click过程代码,具体的编程代码如图所示:

    BitBtn1Click过程代码

      ⑤在Form1里面的Timer1Timer过程代码,具体的编程代码如图所示:

    Timer1Timer过程代码

      ⑥最后我们只需要直接单击按下F9快捷键就可以将应用程序运行起来了。大家要注意一点,那就是上面的应用程序是在C++Builder5.0、Windows95/98/NT/2000简体中文版环境下调试通过的。

      三、程序清单

      在教程的结尾,小编还为大家准备了一份程序清单,方便大家进行理解。具体的编程代码,如图所示:

    第一页编程代码第二页编程代码

      小编结语:

      今天的编程语言教程“在“开始”按钮上面使用C++Builder的绘图方法”,小编就已经介绍完毕了,大家都理解清楚了吗?如果你也有这样的需要,那就赶快来学习一下吧。如果大家喜欢课课家教育的话,不妨可以推荐更多的朋友来哟!

C++ 更多推荐

课课家教育

未登录

1