Ändern von Schriftartattributen

Datei:...\Samples\Solution\Toolbars\Format.scx

Dieses Beispiel illustriert die Verwendung einer Symbolleiste, um die Eigenschaften FontName, FontSize, FontBold, FontItalic, ForeColor und BackColor von Steuerelementen auf einem Formular zu setzen.

Die Symbolleiste ist die tbrEditing-Klasse in ...\Samples\Classes\Samples.vcx. Die nAppliesTo-Eigenschaft der Klasse gibt an, ob die Eigenschaften des momentan ausgewählten Steuerelements, aller Textfelder und Bearbeitungsfelder im Formular oder aller Steuerelemente im Formular festgelegt werden sollen. Der Code im Ereignis InteractiveChange oder Click der Symbolleisten-Steuerelemente setzt die Eigenschaften. So ist beispielsweise folgender Code mit dem Click-Ereignis von cmdBold assoziiert:

IF TYPE("_SCREEN.ActiveForm") = 'O'
   oForm = _SCREEN.ActiveForm
ELSE
   RETURN
ENDIF

DO CASE
   CASE THIS.Parent.nAppliesTo = 1   && Current Control
      oForm.ActiveControl.FontBold = THIS.Value
      
   CASE THIS.Parent.nAppliesTo = 2   && Text and edit boxes
      oForm.SetAll('FontBold', THIS.Value, 'TEXTBOX')
      oForm.SetAll('FontBold', THIS.Value, 'EDITBOX')

   CASE THIS.Parent.nAppliesTo = 3   && All Controls
      oForm.SetAll('FontBold', THIS.Value)
ENDCASE

Der einzige Code im Formular ist mit dem GotFocus-Ereignis****der Steuerelemente assoziiert. Jedes GotFocus-Ereignis beinhaltet die folgende Codezeile:

THISFORMSET.tbrEditing.Refresh(THIS)

Die Refresh-Methode von tbrEditing setzt die Werte der Bearbeitungssteuerelemente der Symbolleiste so, dass diese die aktuellen Einstellungen des Objektes widerspiegeln, auf das der als Parameter übergebene Verweis zeigt.

Siehe auch

Schriftart-Kombinationsfeld | Schriftgrad-Kombinationsfeld | Lösungsbeispiele