你好,欢迎来到电脑编程技巧与维护杂志社! 杂志社简介广告服务读者反馈编程社区  
合订本订阅
 
 
您的位置:杂志经典 / 跟高手学编程
VC++.NET图形编程--绘K线图和条形图(六)
 
⒏ 显示图形

图形已经绘制完成。要将图形显示在窗体中,需要做以下两件工作:

(1)编写DrawingForm_Load_Load事件处理程序

在窗体DrawingForm_LoadLoad事件中,将PictureBox控件的Paint事件连接到事件处理器方法,同时将PictureBox控件附加到DrawingForm_Load窗体:

private: System::Void DrawingForm_Load_Load(System::Object^  sender, System::EventArgs^  e)

{

    // PictureBox控件的Paint事件连接到事件处理器方法。

pictureBox1->Paint += gcnew System::Windows::Forms::PaintEventHandler( this, &DrawingForm::pictureBox1_Paint );

    // PictureBox控件附加到窗体。

this->Controls->Add( pictureBox1 );

}

(2)用主窗体“技术分析”菜单的“绘图”命令显示DrawingForm_Load窗体

在绘图ToolStripMenuItem_Click过程中添加以下代码:

private: System::Void 绘图ToolStripMenuItem_Click(System::Object^  sender, System::EventArgs^  e)

{

DrawingForm^ drawingfrm=gcnew DrawingForm();

drawingfrm ->Show();

}

最后,在StockMrktAnls.h代码文件的顶部添加一行代码,将DrawingForm_Load窗体的头文件包含进来:

#include "DrawingForm_Load.h"

四、运行实例程序

从“文件”菜单中,选择“全部保存”。

Ctrl+F5 运行应用程序。显示主窗口。

从主窗口选择“技术分析”菜单下的“绘图”命令,显示“绘图”窗口,如图9所示。

 


9  显示图形

 

在“绘图”窗口中,上框显示上证指数2002-04-012002-06-28的日K线图,下框显示用条形表示成交量图。

五、结语

1VC++.NET图形编程使用GD+GD+是一组类,其中Graphics 类是 GDI+ 的核心功能。使用GD+完全遵循面向对象的一般编程方法,可根据需要选用其中的类建立对象,然后使用这些对象的方法或属性来绘图。

2)如果希望自动重绘图形或文本,应该在窗体中添加一个PictureBox控件,再重写控件的 Paint 事件处理程序,在其中编写绘图的代码,然后在窗体的Load 事件处理程序中,将PictureBox控件的Paint事件连接到事件的处理器方法,并将PictureBox控件附加到窗体。这样,在窗体加载时图形也显示出来,实现了自动重绘。

不能在窗体的 Load 事件处理程序中调用绘制图形或文本的方法,也不能直接编写绘图的代码。

3)为了便于程序调试、功能扩展和系统维护,编码中涉及图形位置、大小、文本格式等的数据都尽可能用变量来保存。依赖于其他变量的这类数据,用其他变量的表达式来表示。

 

参考文献

 

1] 范晓平.跟着实例学Visual C++ 6.0访问数据库·绘图·制表,北京航空航天大学出版社,2003.

2Microsoft Corporation.MSDN Library for Visual Studio 2005.

  推荐精品文章

·2024年12月目录 
·2024年11月目录 
·2024年10月目录 
·2024年9月目录 
·2024年8月目录 
·2024年7月目录 
·2024年6月目录 
·2024年5月目录 
·2024年4月目录 
·2024年3月目录 
·2024年2月目录 
·2024年1月目录
·2023年12月目录
·2023年11月目录

  联系方式
TEL:010-82561037
Fax: 010-82561614
QQ: 100164630
Mail:gaojian@comprg.com.cn

  友情链接
 
Copyright 2001-2010, www.comprg.com.cn, All Rights Reserved
京ICP备14022230号-1,电话/传真:010-82561037 82561614 ,Mail:gaojian@comprg.com.cn
地址:北京市海淀区远大路20号宝蓝大厦E座704,邮编:100089