Share your opinion
WIDGETS GAMBAS
GAMBAS 3 SOFTWARES
TUTORIALS
Library
|
Component creation - Diode
CREATE GAMBAS 3 COMPONENT
To create a component, we have to understand oriented object conception(OOP) : Public, Private, Create, etc... herit, inherit... A)OOP basic lesson 'Class Quadruped Property footnumber Property mouthsize 'Class dog Inherit Quadruped Property race property colour Donc au final la classe dog dog.footnumber dog.mouthsize dog.race dog.colour It's the same thing for containers, you create a console project and, you put in Two or three class and you see how they interreac themselves. For example, if I code this : 'Class mylabel Inherit Label Property Text as string Private Sub Text_Read() as String return SUPER.Text & astring end Private Function Text_Write(Value as string) SUPER.Text = Value end I "change" or "turn away" the label property... "Super" call a parent class property Well if I write this : label.text = "mystring" print label.text the result is : mystringastring Why use this example ? nothing ! :) sometimes, you want to call a class without instance : I instance with New: hmyClass = new Myclass I put Create Static .we can write as Report : report.myfonction Because Gambas instance a report and affect to the Reported variable, well report go from class to a reported variable. What is a instance ? It's a copy of work in memory. may be you have as instance far as you xant. A module is a class with statics elements, that's why, it doesn't instanciable and accessible since maclass.mafonctionstatique. I use it in gb.report to, for example, put objects references in a collection. Well I call report._collection[valeur] where _collection is declared static.public "_" symbol mean this function is cached in the IDE... yes there is a lot of cached things.. usable, but cached because dangerous for a direct use, or simply to not surcharge the interface... Now we try to create own first gambas 3 components or widget. B) Fisrt component Here you find the fisrt demonstration of a new component : the Diodes Just one or two points : 1) you have to check that this project is a component(general properties window with ctrl+p). Well, you have to check if your project has graphics components (gb.gui, gb.qt4 or gb.gtk) 2) Now to test or to use your new component, you have to create gambas binary(don't create binary in your project path !) and put checkbox "install component" to true. validate by OK button and miracle ! your new widget is listed in your toolbox :) :) Be carrefull : Your component is installed on your local hardisk.(in /home/user...) The end. C) difference with a component and a control. A control is a class type... in this example, I have explained to you how to make a graphic component... this is not the same thing for gb.chart or gb.report because they draw on device given by the class paint. A component is a set of classes and controls. gb.qt for example is a component who have : button, listbox,(they are controls), timer(is a class usable as a control), paint(is a class) regards Creation date : 08/04/2010 @ 22:44 Reactions to this article
| QUICK MENU
SEARCH
LANGUAGE
COMPONENTS
Other
LANGUAGE
Where, who?
VISITS
visitors visitors online ARCHIVES GAMBAS 1/2
|