| Chapter 2: VB .NET WinForm Walk-Through |
|
ProEssentials
WinForm interfaces are used when creating stand-alone client-side EXEs
to be distributed and ran on an end-users machine.
If you haven't read the .NET Overview,
this is a recommended prerequisite and will help understanding this walk-through.
Walk-Through:
The
following information demonstrates how to create your first .NET ProEssentials
implementation using the Visual Basic language. It discusses using the
WinForm .NET interfaces to add interactive charting content to your EXEs.
Other examples are provided within the product/evaluation.
Also refer to the "ReadMe.htm", "AspReadMe.htm", and
"AspReadMe.htm" files installed onto your system with the eval/product
(accessible via Start menu).
1) Start Visual Studio.NET and create a new
project targeting a [Windows Application] using Visual Basic as your language. Accept
the default name of [WindowsApplication1].
2) When the new project opens, you will be
presented the design view of "Form1.vb".
If you have already installed the ProEssentials
WinForm interfaces, skip to step 4.
| Customize
Toolbox... Dialog |
Adding
ProEssentials to Visual Studio.NET... |
|
3) Installing WinForm interfaces into Visual Studio.NET
VS2005 Instructions
- Under the Tools menu, select [Choose Toolbox Items...],
-
If not selected, left click the [.NET Framework Components] tab,
-
Left click the [Browse...] button and find the file "Gigasoft.ProEssentials.dll" found in the DotNet20 subdirectory where you installed ProEssentials. By default, this should be located at "C:\ProEssentials6\DotNet20\",
-
Select the file "Gigasoft.ProEssentials.dll" and close the [Open File] dialog,
-
The [Choose Toolbox Items] dialog should now show 5 highlighted controls: Pe3do, Pego, Pepco, Pepso, and Pesgo.
-
Close the dialog and the 5 new ProEssentials components will be at the bottom of the toolbox.
VS2003 and Earlier Instructions
-
Double check that the [Windows Forms] tab on the tool box is active (Pointer, Label, should be visible)
-
Right click anywhere in the toolbox and select [Add/Remove Items... or Customize Toolbox...],
-
Left click the [.NET Framework Components] tab,
-
Left click the [Browse...] button and find the file "Gigasoft.ProEssentials.dll" found in the DotNet subdirectory where you installed ProEssentials. By default, this should be located at "C:\ProEssentials6\DotNet\",
-
Select the file "Gigasoft.ProEssentials.dll" and close the [Open File] dialog,
-
The [Customize Toolbox] dialog should now show 5 highlighted controls: Pe3do, Pego, Pepco, Pepso, and Pesgo.
-
Close the [Customize Toolbox] dialog and the 5 new ProEssentials components will be at the bottom of the toolbox.
|
| Form1.vb
[Design]... |
Adding
ProEssentials to a Form... |
|
4) Double click the [Pego]
tool within the toolbox. This places an instance of the Pego component
within "Form1.vb". Left click bottom-right corner of control
and drag down-right to fill up client area of Form1. The adjacent image
shows what you see.
This
represents the default state of a ProEssentials Graph. The default state
has one subset with four data points. In the course of constructing your
own charts, you'll set the properties PeData.Subsets
and PeData.Points which define the quantity of data your chart
will hold. You'll then pass data via the PeData.Y(subset, point)
two dimensional property array. The following section shows example code
of passing data.
ProEssentials uses the terms Subsets and
Points but you can think of these as Rows and Columns. Passing data is
as simple as filling each Subset with Points worth of data.
|
|
|
Adjusting
design time settings... |
|
5) ProEssentials currently has limited point-and-click
programmability. Our
next release will have extensive point-and-click features, but until then,
you'll have to write a tiny bit a code. Note, when setting color and font
size attributes, we recommend setting the parent Form's versions as these
properties as ProEssentials will use the parent form's settings to help
facilitate a uniform look among sibling controls.
If new to Visual Basic, the
(Name) property is probably the most fundamental property as its
name is reflected in all code. For example, Pego1.PeData.Subsets = 1 is
a line of code, and it shows how the (Name) property (Pego1)
starts the line.
|
|
| Form1.vb
[Code]... |
|
6) Double click Form1's Title/Caption Bar to
open the code view for "Form1.vb" with default Form1_Load event
initialized.
The
cursor will be within the Form1_Load code section, enter the following
code into this section.
You can copy and paste if you must, but
hand-typing at least some of this code will really help familiarize yourself
with the Gigasoft.ProEssentials namespace.
Note:
adding the following Imports declaration
at the top of "Form1.vb" will shorten enumeration syntax.
Imports Gigasoft.ProEssentials.Enums
7) The code above enabled the DataHotSpot event,
so we should place some appropriate code in the DataHotSpot event.
Within the two drop-down combo boxes at
top of code view window, select [Pego1]
within the left combo box. Select [PeDataHotSpot]
within the right combo box. The
cursor should be within the Pego1_PeDataHotSpot event. See
the red annotations in the bitmap below.
Add the following code to the Pego1_PeDataHotSpot
event.
|
Windows.Forms.MessageBox.Show("Point
" + e.PointIndex.ToString() + _
"
with a value of " + Pego1.PeData.Y(0, e.PointIndex).ToString()) |
So,
the "Form1.vb" code window should contain...
8)
Save and run the project. Your project
will show an image as follows. Move the mouse over a bar and click to
trigger the DataHotSpot event.
|
| Run
the project... |
Success!!! |
|
|
This
completes this walkthrough.
Please
read the remaining sections within Chapter 2 and review the demo code
and documentation that's installed with the eval/product.
Once installed, the demo program can be
accessed via shortcut...
Start / All Programs / ProEssentials v6 /
PEDemo
Note that the demo is replicated in native
VB.NET, C#.NET, VB6,
and VC6 projects all accessible from the start menu. These
are great for modifying an existing demo to test potential modifications
before implementing within your applications. |
|