Difference between revisions of "HU/Documentation/BASIC Guide/Working With Dialogs"
Timarandras (Talk | contribs) (New page: {{HU/Documentation/BASICGuideTOC/v2 |ShowPrevNext=block |ShowPrevPage=block |PrevPage=HU/Documentation/BASIC Guide/Dialogs |NextPage=HU/Documentation/BASIC Guide/Properties |dial=block }} ...) |
|||
Line 85: | Line 85: | ||
Ez a kód meghatározza a <tt>MyButton</tt> vezérlőelem objektumát, majd az elemre hivatkozással ennek értékére állítja be a <tt>Ctl</tt> objektumváltozót. Végül a kód a vezérlőelem <tt>Label</tt> tulajdonságához a <tt>New Label</tt> értéket rendeli. | Ez a kód meghatározza a <tt>MyButton</tt> vezérlőelem objektumát, majd az elemre hivatkozással ennek értékére állítja be a <tt>Ctl</tt> objektumváltozót. Végül a kód a vezérlőelem <tt>Label</tt> tulajdonságához a <tt>New Label</tt> értéket rendeli. | ||
− | {{ | + | {{Note|Az {{OOo}} Basic azonosítóival ellentétben a vezérlőelemek nevében a kis- és nagybetűk különbözőnek számítanak.}} |
== Munka a párbeszédablakok és a vezérlőelemek modelljével == | == Munka a párbeszédablakok és a vezérlőelemek modelljével == |
Latest revision as of 06:43, 7 July 2018
- A párbeszédablakok használata
- Tulajdonságok
- Események
- Párbeszédablakok vezérlőelemei
Az Apache OpenOffice Basic párbeszédablakai olyan önálló ablakok, amelyek szövegmezőket, listákat, választókapcsolókat és más vezérlőelemeket tartalmazhatnak.
Párbeszédablakok létrehozása
A párbeszédablakokat az Apache OpenOffice párbeszédablak-szerkesztőjével hozhatjuk létre és alakíthatjuk ki:
A használni kívánt vezérlőelemeket a tervezőpalettáról (jobbra) áthúzzuk a párbeszédablak-területre, ahol megadhatjuk ezek helyét és méretét.
A példában egy címkét és egy listát tartalmazó párbeszédablak látható.
A párbeszédablakok a következő kóddal nyithatók meg:
Dim Dlg As Object DialogLibraries.LoadLibrary("Standard") Dlg = CreateUnoDialog(DialogLibraries.Standard.DlgDef) Dlg.Execute() Dlg.dispose()
A CreateUnoDialog egy Dlg nevű objektumot hoz létre, amely a kapcsolódó párbeszédablakra hivatkozik. A párbeszédablak létrehozása előtt biztosítani kell, hogy az általa használt programkönyvtár (a példában ez a Standard) be legyen töltve. A LoadLibrary metódus végrehajtja ezt a feladatot.
A Dlg objektum inicializálása után az Execute metódussal megjeleníthetjük a párbeszédablakot. A párbeszédablakok, így a példában szereplő is, viselkedése modális, azaz bezárásukig nem tesznek lehetővé más programműveletet. Amíg a párbeszédablak nyitva van, a program az Execute hívás állapotában marad.
A kód végén lévő dispose metódus a párbeszédablak által használt erőforrásokat felszabadítja a programfutás befejezésekor.
Párbeszédablakok bezárása
Bezárás az OK vagy a Mégse gombbal
Ha a párbeszédablak tartalmaz egy OK vagy egy Mégse gombot, az ezek bármelyikére kattintás automatikusan bezárja a párbeszédablakot. A gombok használatáról a további tudnivalók a Párbeszédablakok vezérlőelemeinek részletes ismertetése című részben olvashatók.
Ha egy párbeszédablakot az OK gombra kattintással zárunk be, az Execute metódus visszatérési értéke 1 lesz, egyébként a metódus a 0 értéket adja vissza.
Dim Dlg As Object DialogLibraries.LoadLibrary("Standard") Dlg = CreateUnoDialog(DialogLibraries.Standard.MyDialog) Select Case Dlg.Execute() Case 1: MsgBox "OK gombra kattintás" Case 0: MsgBox "Mégse gombra kattintás" End Select
Bezárás a címsor Bezárás gombjával
A párbeszédablakok a címsorban található bezárás (×) gombra kattintással is bezárhatók. Ebben az esetben a párbeszédablak Execute metódusa ugyanúgy a 0 értéket adja vissza, mintha a Mégse gombra kattintottunk volna.
Bezárás explicit programhívással
A megnyitott párbeszédablak az endExecute metódussal is bezárható:
Dlg.endExecute()
Az egyes vezérlőelemek elérése
A párbeszédablakok tetszőleges számú vezérlőelemet tartalmazhatnak. Ezek a vezérlőelemek a getControl metódussal érhetők el, amely a vezérlőelem nevét adja vissza.
Dim Ctl As Object Ctl = Dlg.getControl("MyButton") Ctl.Label = "New Label"
Ez a kód meghatározza a MyButton vezérlőelem objektumát, majd az elemre hivatkozással ennek értékére állítja be a Ctl objektumváltozót. Végül a kód a vezérlőelem Label tulajdonságához a New Label értéket rendeli.
Az Apache OpenOffice Basic azonosítóival ellentétben a vezérlőelemek nevében a kis- és nagybetűk különbözőnek számítanak. |
Munka a párbeszédablakok és a vezérlőelemek modelljével
Az Apache OpenOffice API számos helyén előfordul a látható programelemek (View) és az ezek mögött lévő adatok vagy dokumentumok (Model) közötti megkülönböztetés. A vezérlőelemek metódusain és tulajdonságain kívül a párbeszédablak- és a vezérlőelem-objektumok is rendelkeznek egy alárendelt Model objektummal. Ez az objektum lehetővé teszi, hogy közvetlenül elérjük egy párbeszédablak vagy egy vezérlőelem tartalmát.
A párbeszédablakokban az adatok és a megjelenítés közötti megkülönböztetés nem mindig olyan egyértelmű, mint az Apache OpenOffice többi API-területén. Az API elemei mind a nézeten, mind a modellen keresztül elérhetők.
A Model tulajdonság a párbeszédablak és a vezérlőelem-objektumok modelljének programvezérelt elérését biztosítja.
Dim cmdNext As Object cmdNext = Dlg.getControl("cmdNext") cmdNext.Model.Enabled = False
Ez a példa a cmdNtext modellobjektuma segítségével kikapcsolja a cmdNtext gomb működését a Dlg párbeszédablakban.
Content on this page is licensed under the Public Documentation License (PDL). |