STATIC


zur allgemeinen Verwendung s. die Beschreibung zum Dialogeditor

Für das Dialog-Bezeichnungsfeld (STATIC) gelten Besonderheiten: Dieses kann - anders als EDIT und SLEDIT - nur dann mit FF_SetControl geändert werden, wenn der Dialog gerade aktiv ist. Wenn vor dem Aufruf des Dialogs keine Startwert für das Bezeichnungsfeld bekannt ist, kann es unsichtbar angelegt werden, indem man als Bezeichner das Pipe-Zeichen | oder ein Vielfaches davon angibt. Bei laufenden Dialog kann für das STATIC-Feld dann der jeweils notwendige Wert gesetzt werden.

VBScript
'FFSubmenu=Test
'FFName=STATIC

'** Start Dialog test **
FF_AddDialog "test",146,90
FF_AddControl "test","|","STATIC",10,12,33,11            ' zunächst unsichtbares Bezeichnungsfeld
FF_AddControl "test","||","STATIC",22,53,33,11           ' zunächst unsichtbares Bezeichnungsfeld
FF_AddControl "test","|||","STATIC",0,0,33,11            ' zunächst unsichtbares Bezeichnungsfeld
FF_AddControl "test","Do","BUTTON",105,72,33,11
'** End Dialog test **
'FF_SetControl "test" ,"|", "Beschreibung"               ' funktioniert NICHT

do
     taste = FF_ShowDialog ("test")
     'FF_SetControl "test" ,"|", "Beschreibung"          ' funktioniert NICHT
     Select case taste
          case "CANCEL"
               exit do
          case "Do"
               FF_SetControl "test" ,"|", "Beschreibung"  ' DAS funktioniert
          case else
               'FF_SetControl "test" ,"|", "Beschreibung" ' funktioniert NICHT
     end select
loop

Will man nach Start des Dialogs sofort eine Vorbesetzung des Bezeichnungsfeldes anzeigen, muss man zu einem Trick greifen.
Man startet den Dialog-Timer , setzt nach einem abgelaufenem Intervall das gewünschte Bezeichnungsfeld, z.B. "|" und stoppt dann wieder den Timer.

VBScript

'FFSubmenu=Test
'FFName=STATIC

'** Start Dialog test **
FF_AddDialog "test",146,90
FF_AddControl "test","|","STATIC",10,12,33,11            ' zunächst unsichtbares Bezeichnungsfeld
FF_AddControl "test","Do","BUTTON",105,72,33,11
'** End Dialog test **

'FF_SetControl "test" ,"|", "Beschreibung"               ' funktioniert NICHT
FF_SetDialogTimer "test", 100                            ' aber Das funktioniert

do
     taste = FF_ShowDialog ("test")
     'FF_SetControl "test" ,"|", "Beschreibung"          ' funktioniert NICHT
     Select case taste
          case "TIMER"
               FF_SetControl "test" ,"|", "Vorbelegung"  ' aber Das funktioniert
               FF_SetDialogTimer "test", 0
          case "CANCEL"
               exit do
          case "Do"
               FF_SetControl "test" ,"|", "Beschreibung"  ' und Das funktioniert nach wie vor
     end select
loop