TEXTEDITOR COMMANDS

TEXTEDITOR #handle.ext, xpos, ypos, wide, high

Beschrijving:
Texteditor is een control die lijkt op een textbox, maar met schuifbalken, 
en met een verbeterde commando reeks. De bevelen zijn hoofdzakelijk het zelfde als 
dat van een venster van type "tekst."  

Een TEXTEDITOR is een "control". De "handle" heeft dus een extensie. 
Een venster van het type TEXT is een venster. Die wordt geopend met een "handle" . 
Een TEXTBOX is ook een besturingselement (control), met een handle plus extensie. 

MERK op dat de texteditor commando's met een uitroeppunt beginnen, 
omdat de "control" anders eenvoudig alles dat we ernaar sturen (met of zonder print commando)
gewoon op het display getoond zal worden als het niet met een uitroeppunt begint. 
Texteditor is een methode voor de gebruiker om grote hoeveelheden tekst
te creëren en of te wijzigen.  De toevoeging van een "texteditor control" aan een venster
geeft automatisch menubalk met daarin een EDIT menu. Door het aanklikken van de rechtermuisknop
binnen een texteditor control schiet automatisch een EDIT menu omhoog.

#handle.ext  
Het #handle deel moet hetzelfde zijn als voor het venster dat de texteditorcontrol bevat.
Het ".ext" deel moet voor de texteditor uniek zijn.

xpos & ypos  
Dit is de positie van de texteditor in x en y richting vanaf de linker bovenhoek
van het venster gerekend. 

wide & high   
Dit zijn de breedte en de hoogte van de texteditor in pixels.

Hier zijn de texteditor commando's:

print #handle, "!autoresize"; Dit werk met texteditor controls, maar niet met textbox controls of tekstvensters. Dit zorgt ervoor dat de randen van de control op dezelfde afstand van de randen van het algemene venster gehandhaafd blijven. Als de gebruiker het venster van omvang veranderd, ook veranderd de texteditor control ook van omvang. print #handle, "!cls" ; Dit wist alle tekst uit de texteditor. print #handle, "!contents varname$"; print #handle, "!contents #handle"; Zoals hierboven te zien kent dit commando twee vormen. De eerste vorm zorgt ervoor dat de inhoud van de texteditor worden vervangen door de inhoud van varname$, en de tweede vorm zorgt ervoor dat de inhoud van de texteditor wordt vervangen door de inhoud van de stroom gegevens waarnaar #handle refereert (dat is de handle van een bestand dat voor INPUT is geopend). Deze tweede vorm is nuttig om snel grote tekstbestanden in het venster in te lezen. Hier is een voorbeeld van de tweede vorm: open "Contents of AUTOEXEC.BAT" for text as #aetext open "C:\AUTOEXEC.BAT" for input as #autoexec print #aetext, "!contents #autoexec"; close #autoexec 'stop here input a$ print #handle, "!contents? string$"; Dit commando keert met de volledige tekst van het venster terug. Nadat dit commando wordt gegeven, zit de volledige tekst in de variabele string$. print #handle, "!copy" ; Dit commando zorgt ervoor dat de momenteel geselecteerde tekst worden gekopieerd naar het klembord van WINDOWS. print #handle, "!cut" ; Dit commando zorgt ervoor dat de momenteel geselecteerde tekst van het tekstvenster wordt verwijderd en wordt gekopieerd naar het klembord van WINDOWS. print #handle, "!font fontName pointsize" ; Dit commando stelt het lettertype van de teksteditor in op de gespecificeerde font naam en de font grootte. Als een nauwkeurige gelijke lettertype niet kan worden gevonden, dan zal Liberty BASIC proberen om een dichtstbijzijnde gelijke te matchen, waarbij grootte belangrijker is dan hoe het eruit ziet (gezicht.) Let op, dat een lettertype naam "font" die uit meer dan één woord bestaat opgegeven wordt door de aparte woordjes te koppelen met een "underscore _ character" Zo zal bijvoorbeeld het font Times New Roman worden Times_New_Roman, en het font Courier New wordt Courier_New. For more on specifying fonts read How to Specify Fonts Example: print #handle, "!font Times_New_Roman 10"; print #handle, "!insert varname$"; Dit commando plaatst de inhoud van de variabele op de huidige invoegplek (tekstcursor) positie, en de selectie wordt benadrukt. print #handle, "!line n string$" ; Keert terug met de tekst bij regel n. In de code hierboven, staat n een letterlijk getal. Als n kleiner is dan één of groter is dan het aantal regels dat de texteditor bevat, dan wordt met "" (een lege string) teruggekeerd. Nadat dit commando wordt gegeven, staat de tekst van de regel in de variabele string$. Deze voorbeeld code vindt de inhoud van regel nummer 7 en plaatst die in een variabele genaamd string$: print #textwindow, "!line 7 string$" print #h, "!lines countVar" ; Dit commando keert met het aantal regels die in de texteditor staan terug, de waarde wordt geplaatst in de variabele countVar. #handle.ext "!locate x y width height" Dit herplaatst de control binnen zijn venster. Dit commando is vooral effectief als de control binnen een venster van het type "Window" is geplaatst.De control zal zijn grootte en plaats niet eerder bijwerken voordat een REFRESH bevel wordt verzonden naar het venster. Zie het RESIZE.BAS voorbeeldprogramma. print #handle, "!modified? answer$" ; Dit commando keert met een string (of "true" of "false") terug die aangeeft of er enig gegeven in de texteditor is gewijzigd. In variabele answer$ staat de string (true - false). Dit is nuttig om te kunnen controleren of de inhoud van de texteditor nog bewaard moet worden alvorens het af te sluiten. print #h, "!origin? columnVar rowVar" ; Dit commando geeft de huidige oorsprong van de texteditor weer. Wanneer een texteditor voor het eerst wordt geopend, zou het resultaat kolom 1, rij 1 zijn. Het resultaat van het commando staat in de variabelen columnVar en rowVar. print #handle, "!origin column row" ; Dit commando dwingt de oorsprong van het venster om column en row te zijn. De rij en de kolom moeten letterlijke getallen zijn. Om variabelen voor deze waarden te gebruiken, moet men ze buiten de aanhalingstekens plaatsen, en daarbij tevens de spaties tussen de variabelen bewaren: print #handle, "!origin ";column;" ";row print #handle, "!paste" ; Dit zorgt ervoor dat de tekst uit het klembord van WINDOWS (als er tekst in zit) zal worden geplakt in de texteditor op de huidige cursorpositie. print #handle, "!select column row" ; Dit commando zet de knipperende cursor op positie column row. De kolom en de rij moeten letterlijke getallen zijn. Om hen als variabelen uit te drukken, moet men de variabelen buiten de aanhalingstekens plaatsen en daarbij de bijbehorende spaties handhaven zoals hier: print #handle, "!select ";column;" ";row print #handle, "!selectall" ; Dit zorgt ervoor dat alles in de texteditor wordt geselecteerd (benadrukt). print #handle, "!selection? selected$" ; Dit commando keert met de benadrukte tekst uit de texteditor terug. Het resultaat zal in variabele selected$ zitten. print #handle, "!setfocus"; Dit zorgt ervoor dat Windows de inputnadruk aan deze "control" geeft. Dit betekent dat, als een andere control in hetzelfde venster actief en benadrukt werd, onze "control" nu de benadrukte en actieve "control" wordt, die toetsenbordinput ontvangt. #handle.ext "!enable" Dit zorgt ervoor dat er toegang tot de control is. #handle.ext "!disable" Dit maakt de control inactief , de knop wordt licht grijs. #handle.ext "!show" Dit zorgt er voor dat de control zichtbaar wordt. #handle.ext "! hide" Dit verbergt de control en maakt het onzichtbaar. See also: Text Commands For information on creating controls with different background colors, see Colors and the Graphical User Interface.