Xojo Conferences
MBSSep2018MunichDE
XDCMay2019MiamiUSA

Platforms to show: All Mac Windows Linux Cross-Platform

/ChartDirector/squareameter
Function:
Required plugins for this example: MBS ChartDirector Plugin
You find this example project in your Plugins Download as a Xojo project file within the examples folder: /ChartDirector/squareameter
This example is the version from Sun, 17th Mar 2012.

Screenshot for this example project.

Project "squareameter.rbp"
Class App Inherits Application
Const kEditClear = "&Löschen"
Const kFileQuit = "Beenden"
Const kFileQuitShortcut = ""
EventHandler Sub Open() createChart(0, "squareameter0") createChart(1, "squareameter1") createChart(2, "squareameter2") createChart(3, "squareameter3") End EventHandler
Protected Sub CreateChart(img as integer, filename as string) dim w as new PicWindow w.Title=filename // The value to display on the meter const value = 4.75 // Create an AugularMeter object of size 110 x 110 pixels, using silver // background color with a black 2 pixel 3D depressed border. dim m as new CDAngularMeterMBS(110, 110, CDBaseChartMBS.silverColor, &h000000, -2) // Set meter appearance according to a parameter if (img = 0) then // Set the meter center at bottom left corner (15, 95), with radius 85 // pixels. Meter spans from 90 - 0 degrees. m.setMeter(15, 95, 85, 90, 0) // Add a label to the meter centered at (35, 75) call m.addText(35, 75, "VDC", "arialbd.ttf", 12, CDBaseChartMBS.kTextColor, CDBaseChartMBS.kCenter) // Add a text box to show the value at top right corner (103, 7) m.addText(103, 7, m.formatValue(value, "2"), "arial.ttf", 8, &hffffff,CDBaseChartMBS.kTopRight).setBackground(0, 0, -1) elseif (img = 1) then // Set the meter center at top left corner (15, 15), with radius 85 pixels. // Meter spans from 90 - 180 degrees. m.setMeter(15, 15, 85, 90, 180) // Add a label to the meter centered at (35, 35) call m.addText(35, 35, "AMP", "arialbd.ttf", 12, CDBaseChartMBS.kTextColor, CDBaseChartMBS.kCenter) // Add a text box to show the value at bottom right corner (103, 103) m.addText(103, 103, m.formatValue(value, "2"), "arial.ttf", 8, &hffffff, CDBaseChartMBS.kBottomRight).setBackground(0, 0, -1) elseif (img = 2) then // Set the meter center at top right corner (15, 95), with radius 85 pixels. // Meter spans from 270 - 180 degrees. m.setMeter(95, 15, 85, 270, 180) // Add a label to the meter centered at (75, 35) call m.addText(75, 35, "KW", "arialbd.ttf", 12, CDBaseChartMBS.kTextColor, CDBaseChartMBS.kCenter) // Add a text box to show the value at bottom left corner (7, 103) call m.addText(7, 103, m.formatValue(value, "2"), "arial.ttf", 8, &hffffff, CDBaseChartMBS.kBottomLeft).setBackground(0, 0, -1) else // Set the meter center at bottom right corner (95, 95), with radius 85 // pixels. Meter spans from 270 - 360 degrees. m.setMeter(95, 95, 85, 270, 360) // Add a label to the meter centered at (75, 75) call m.addText(75, 75, "RPM", "arialbd.ttf", 12, CDBaseChartMBS.kTextColor, CDBaseChartMBS.kCenter) // Add a text box to show the value at top left corner (7, 7) call m.addText(7, 7, m.formatValue(value, "2"), "arial.ttf", 8, &hffffff, CDBaseChartMBS.kTopLeft).setBackground(0, 0, -1) end if // Meter scale is 0 - 10, with a major tick every 2 units, and minor tick every 1 // unit m.setScale(0, 10, 2, 1) // Set 0 - 6 as green (99ff99) zone, 6 - 8 as yellow (ffff00) zone, and 8 - 10 as // red (ff3333) zone m.addZone(0, 6, &h99ff99, &h808080) m.addZone(6, 8, &hffff00, &h808080) m.addZone(8, 10, &hff3333, &h808080) // Add a semi-transparent black (80000000) pointer at the specified value call m.addPointer(value, &h80000000) w.Backdrop=m.makeChartPicture w.top=50+150*(img\2) w.left=150*(img mod 2) w.show End Sub
End Class
Class PicWindow Inherits Window
End Class
MenuBar MenuBar1
MenuItem FileMenu = "&Ablage"
MenuItem FileQuit = "#App.kFileQuit"
MenuItem EditMenu = "&Bearbeiten"
MenuItem EditUndo = "&Rückgängig"
MenuItem UntitledMenu1 = "-"
MenuItem EditCut = "&Ausschneiden"
MenuItem EditCopy = "&Kopieren"
MenuItem EditPaste = "&Einfügen"
MenuItem EditClear = "#App.kEditClear"
MenuItem UntitledMenu0 = "-"
MenuItem EditSelectAll = "&Alles auswählen"
End MenuBar
End Project

Feedback, Comments & Corrections

The items on this page are in the following plugins: MBS ChartDirector Plugin.




Links
MBS Xojo Plugins