Home > Class & module > 3.Collection > CustomUI

CustomUI

 

This class is a graphics engine to help a user generate custom UI form (window).

Visual Gene Developer provides 5 instances of the class 'CustomUI': 'CustomUI', 'CustomUI2', 'CustomUI3', 'CustomUI4', 'CustomUI5'.

Each instance can operate a single independent 'active Custom UI window'. Thus, a user can handle maximum five 'active Custom UI windows' at the same time. For more details, check 'Module development' section

 


o Canvas & form

 Module

 Description

 Sub Define_Canvas (Width As Integer, Height As Integer, Optional ShowToolStrip As Boolean)

 Open and define canvas

 *ShowToolStrip: If true, toolstrip menu will be shown (default value is true)

 Property Form_Caption () As String

 Set form title

 Property Form_Left () As Integer

 Set left

 Property Form_Top () As Integer

 Set top

 Sub Update_Canvas ()

 Update canvas

 Sub Make_Clone ()

 Make duplicate clone and active drawing form

 Sub Form_BringToFront ()

 Bring to front

 Sub Show_Form ()

 Show

 Sub Hide_Form ()

 Hide

 Property RawData () As String  Store text raw data for data export

 

o Color

 Module

 Description

 Sub Set_ForeColor_byRGB (Red_Value As Integer, Green_Value As Integer, Blue_Value As Integer, Optional Alpha_Value As Integer)

 Set fore color. Given by RGB as well as alpha value.

 * Each color channel can have value from 0 to 255

 * Alpha_value: Opacity

 Sub Set_FillColor_byRGB (Red_Value As Integer, Green_Value As Integer, Blue_Value As Integer, Optional Alpha_Value As Integer)

 Set fill color. Given by RGB as well as alpha value.

 * Each color channel can have value from 0 to 255

 *Alpha_value: Opacity

 Sub Set_ForeColor_byName (ColorName As String, Optional Alpha_Value As Integer)

 Set fore color. Given by color name like "Black", "Yellow", "Red"  Check 'System defined color'

 Sub Set_FillColor_byName (ColorName As String, Optional Alpha_Value As Integer)

 Set fill color. Given by color name like "Black", "Yellow", "Red"  Check 'System defined color'

 

o Text & Font

 Module

 Description

 Sub Set_Font (FontSize As Single, Optional FontName As String, Optional Italic As Boolean, Optional Bold As Boolean, Optional Underline As Boolean, Optional Strikeout As Boolean)

 Set font for text

 * FontName: Default name is "Microsoft Sans Serif"

 * Italic, Bold, Underline, Strikeout: Can be set to be True or False

 Sub DrawString (X As Integer, Y As Integer, TextStr As String, Optional ForeColor_byName As String)

 Draw text string

 Sub DrawOutlinedString (X As Integer, Y As Integer, TextStr As String, Optional ForeColor_byName As String, Optional OutlineColor_byName As String)

 Draw outlined text string

 

o Drawing

 Module

 Description

 Sub Clear_Canvas (Optional Color_byName As String)

 Clear canvas

 * Color_byName:  Given by string like "Black", "Yellow", "Red"  Check 'System defined color'

 Sub DrawLine (X1 As Integer, Y1 As Integer, X2 As Integer, Y2 As Integer, Optional ForeColor_byName As String)

 Draw single line

 * Forecolor_byName: Given by string like "Black", "Yellow", "Red"  Check 'System defined color'

 Sub DrawArc (X As Integer, Y As Integer, Width As Integer, Height As Integer, StartAngle As Single, SweepAngle As Single, Optional ByVal ForeColor_byName As String)

 Draw arc

 Sub DrawBezier(X1 As Integer, Y1 As Integer, X2 As Integer, Y2 As Integer, X3 As Integer, Y3 As Integer, X4 As Integer, Y4 As Integer, Optional ForeColor_byName As String)

 Draw Bezier curve

 Sub DrawPie (X As Integer, Y As Integer, Width As Integer, Height As Integer, StartAngle As Single, SweepAngle As Single, Optional ForeColor_byName As String)

 Draw pie

 Sub DrawRectangle (X As Integer, Y As Integer, Width As Integer, Height As Integer, Optional ForeColor_byName As String)

 Draw rectable

 Sub DrawEllipse (X As Integer, Y As Integer, Width As Integer, Height As Integer, Optional ForeColor_byName As String)

 Draw ellipse

 Sub FillPie (X As Integer, Y As Integer, Width As Integer, Height As Integer, StartAngle As Single, SweepAngle As Single, Optional FillColor_byName As String)

 Draw filled pie

 * Fillcolor_byName: Given by string like "Black", "Yellow", "Red"   Check 'System defined color'

 Sub FillRectangle (X As Integer, Y As Integer, Width As Integer, Height As Integer, Optional FillColor_byName As String)

 Draw filled rectangle

 Sub FillEllipse (X As Integer, Y As Integer, Width As Integer, Height As Integer, Optional FillColor_byName As String)

 Draw filled ellipse

 

o System defined color

AliceBlue DarkBlue Firebrick LightBlue MediumPurple PaleVioletRed Snow
AntiqueWhite DarkCyan FloralWhite LightCoral MediumSeaGreen PapayaWhip SpringGreen
Aqua DarkGoldenrod ForestGreen LightCyan MediumSlateBlue PeachPuff SteelBlue
Aquamarine DarkGray Fuchsia LightGoldenrodYellow MediumSpringGreen Peru Tan
Azure DarkGreen Gainsboro LightGray MediumTurquoise Pink Teal
Beige DarkKhaki GhostWhite LightGreen MediumVioletRed Plum Thistle
Bisque DarkMagenta Gold LightPink MidnightBlue PowderBlue Tomato
Black DarkOliveGreen Goldenrod LightSalmon MintCream Purple Turquoise
BlanchedAlmond DarkOrange Gray LightSeaGreen MistyRose Red Violet
Blue DarkOrchid Green LightSkyBlue Moccasin RosyBrown Wheat
BlueViolet DarkRed GreenYellow LightSlateGray NavajoWhite RoyalBlue White
Brown DarkSalmon Honeydew LightSteelBlue Navy SaddleBrown WhiteSmoke
BurlyWood DarkSeaGreen HotPink LightYellow OldLace Salmon Yellow
CadetBlue DarkSlateBlue IndianRed Lime Olive SandyBrown YellowGreen
Chartreuse DarkSlateGray Indigo LimeGreen OliveDrab SeaGreen  
Chocolate DarkTurquoise Ivory Linen Orange SeaShell  
Coral DarkViolet Khaki Magenta OrangeRed Sienna  
CornflowerBlue DeepPink Lavender Maroon Orchid Silver  
Cornsilk DeepSkyBlue LavenderBlush MediumAquamarine PaleGoldenrod SkyBlue  
Crimson DimGray LawnGreen MediumBlue PaleGreen SlateBlue  
Cyan DodgerBlue LemonChiffon MediumOrchid PaleTurquoise SlateGray  

 

 


o Example 1

 

Function Main()

 

   '---- Define Canvas ------------------------

   Call CustomUI.Define_Canvas(420,55,False)

   Call CustomUI2.Define_Canvas(600,300)

   Call CustomUI.Clear_Canvas

   Call CustomUI2.Clear_Canvas

   CustomUI2.Form_BringToFront

   CustomUI.Form_BringToFront

   CustomUI.Form_Caption="Status"

   CustomUI2.Form_Caption="my Graphics"

 

   'Optional

   CustomUI.Form_Left=CustomUI2.Form_Left + 60

   CustomUI.Form_Top=CustomUI2.Form_Top + 100

 

 

  

   '---- Demo: Basic drawing  ------------------------

   Call CustomUI2.FillRectangle(30,30,100,100,"Red")

   Call CustomUI2.FillEllipse(130,130,100,150,"Blue")

   Call CustomUI2.DrawArc(100,100,100,100,0,180,"Red")

   Call CustomUI2.DrawPie(250,100,100,100,0,180,"Red")

   Call CustomUI2.FillPie(400,100,100,100,0,180,"Blue")

   Call CustomUI2.DrawBezier(100,100,100,200,300,300,500,100,"Magenta")

 

 

   '----- Demo: Random drawing of lines -----------------------------------------------------------------

   For q=1 to 400

         Randomize

         Call CustomUI.Drawline(q+10,10,q+10,40,"Blue")

         Call CustomUI2.Set_ForeColor_ByRGB(Rnd(1)*255,Rnd(1)*255,Rnd(1)*255)

         Call CustomUI2.Drawline(Rnd(1)*450,Rnd(1)*400,Rnd(1)*450,Rnd(1)*400)

         Call CustomUI.Update_Canvas

         Call CustomUI2.Update_Canvas

   Next  

 

 

   '---- Demo: Text --------------------------------------

   Call CustomUI2.Set_Font(15)

   Call CustomUI2.DrawString(430,100,"Visual Gene Developer","Magenta")

   Call CustomUI2.Set_Font(25,,,True)

   Call CustomUI2.DrawOutlinedString(250,120,"Integrated graphic system","Yellow","Black")

 

   Call CustomUI.Update_Canvas

   Call CustomUI2.Update_Canvas

 

 

  '---- Store RawData --------------------------

   CustomUI2.RawData="This is test......" + Chr(13)+Chr(10)+"Visual Gene Developer"

 

 

  '---- Finalize and Close --------------------------

   CustomUI.Hide_Form

   CustomUI2.Make_Clone

 

End Function