Dit voorbeeld illustreert hoe men in een Mercator-venster een component kan plaatsen die de mogelijkheid biedt om tekst in te voegen. Hierbij gaat het om een bijzonder beheer, want de positie van de blinking cursor voor de tekstinvoeging wordt beheerd door Windows. Het bijgevoegde voorbeeld laat zien hoe men in een Visual FoxPro-venster een controle kan plaatsen van het type RichTextBox, uitgebreid met een reeks tools waarmee men de gewenste typografische attributen kan kiezen.
Het bovenstaande venster is een eenvoudig Visual FoxPro-venster waarvan de Init-methode de volgende code bevat:
this.AddObject('UserControl1','olecontrol','MercatorDotNet.FactoryUi')
this.UserControl1.Factory.AssemblyFile="RichTextBoxExtended.dll"
this.UserControl1.Factory.ClassName="RichTextBoxExtended.RichTextBoxExtended"
this.UserControl1.Build() this.UserControl1.SetProperty("Top",5)
this.UserControl1.SetProperty("Left",5)
this.UserControl1.visible=.T.
this.resize
En de Resize-methode bevat deze code:
this.UserControl1.Width=this.width
this.UserControl1.SetProperty("Width",this.Width-10)
this.UserControl1.Height=this.Height
this.UserControl1.SetProperty("Height",this.Height-10)
De parameters moeten worden bezorgd aan de constructeur van deze component vooraleer het Build()-commando wordt opgeroepen, en dat kan via één of meer commando's van dit type:
this.UserControl1.Factory.AddParam(m.monParamètre)
Het oproepen van een methode van de component moet als volgt gebeuren:
- indien de methode geen enkele parameter vereist: this.UserControl1.EvalMethod("NomDeMethode");
- indien de methode 1 parameter vereist: this.UserControl1.EvalMethod_2("NomDeMethode", m.Parametre1);
- indien de methode 2 parameters vereist: this.UserControl1.EvalMethod_3("NomDeMethode", m.Parametre1, m.Parametre2);
- indien de methode 3 parameters vereist: this.UserControl1.EvalMethod_4("NomDeMethode", m.Parametre1, m.Parametre2, m.Parametre3);
- ... tot 5 parameters.
De "EvalSubProp"-methode laat toe eender welke eigenschap van een subobject van uw component te beoordelen. Daartoe moet u de volgende parameters invoeren:
- naam van het object
- gewenste eigenschap
De "SetSubProperty"-methode laat toe eender welke eigenschap van een subobject van uw component te wijzigen. Daartoe moet u de volgende parameters invoeren:
- naam van het object
- gewenste eigenschap
- waarde van deze eigenschap
De bronnen van de RichTextBoxExtended-component alsook van het Visual FoxPro-scherm zijn toegevoegd op deze pagina.
De .net-gebruikerscontrole baseert zich op dit artikel.
Te laden :
0000001499.zip (223 Kb - 14-04-2008)