Difference between revisions of "Documentation/DevGuide/Basic/Dialog as Control Container"

From Apache OpenOffice Wiki
Jump to: navigation, search
m
m
Line 17: Line 17:
 
   oControlModel = oDialogModel.getByName("TextField1")
 
   oControlModel = oDialogModel.getByName("TextField1")
 
</source>
 
</source>
or shorter
+
or shorter:
 
<source lang="oobas">
 
<source lang="oobas">
 
   oControlModel = oDialog.Model.TextField1
 
   oControlModel = oDialog.Model.TextField1
 +
</source>
 +
The model of a control is also returned by the <code>getModel()</code> method of the control. In short notation:
 +
<source lang="oobas">
 +
  oControlModel = oControl.Model
 
</source>
 
</source>
 
{{PDL1}}
 
{{PDL1}}
  
 
[[Category:Documentation/Developer's Guide/Basic and Dialogs]]
 
[[Category:Documentation/Developer's Guide/Basic and Dialogs]]

Revision as of 10:20, 3 December 2010



All controls belonging to a dialog are grouped together logically. This hierarchy concept is reflected by the fact that a dialog control is a container for other controls. The corresponding service com.sun.star.awt.UnoControlDialog therefore supports the com.sun.star.awt.XControlContainer interface that offers container functionality, namely access to its elements by name. Since in OpenOffice.org Basic, every method of every supported interface is called directly at the object without querying for the appropriate interface, a control with the name TextField1 can be obtained from a dialog object oDialog simply by:

  oControl = oDialog.getControl("TextField1")

See OpenOffice.org Basic for additional information. The hierarchy between a dialog and its controls can be seen in the dialog model com.sun.star.awt.UnoControlDialogModel, which is a container for control models and therefore supports the com.sun.star.container.XNameContainer interface. A control model is obtained from a dialog model by:

  oDialogModel = oDialog.getModel()
  oControlModel = oDialogModel.getByName("TextField1")

or shorter:

  oControlModel = oDialog.Model.TextField1

The model of a control is also returned by the getModel() method of the control. In short notation:

  oControlModel = oControl.Model
Content on this page is licensed under the Public Documentation License (PDL).
Personal tools
In other languages