|
|
|
25.04.2024 | Archiv # Recherche # Links # Kontakt # Gästebuch # Impressum | |
Index Login Die Anzeige des Archivs erfolgt grafisch. Ändern |
Kurs: GeoProgrammer (Teil 6)Texteingabe innerhalb einer Dialogbox Im Kursteil 5 habe ich bei der weitergehenden Vorstellung der Anwendungsmöglichkeit einer Dialogbox auch die Befehle DBGETSTRING und DBVARSTR erwähnt. Diese wollen wir nun anwenden. Alles weitere ist ähnlich der Texteingabe bzw. wie es in den bisherigen Dialogboxen üblich war. Man kann es den ausführlich dokumentierten Listing entnehmen. Interessant ist die Platzierung des OK-Feldes. Es ist durch einen zu großen X-Wert außerhalb der Dialogbox. - Demo Name in Box eingeben aus dem 64er Sonderheft 28 "Alles über GEOS". - übersetzt von Hypra-Ass in GeoAssembler .if Pass1 ;dem Assembler .include geosSym ;mitteilen welche .include geosMac ;Dateien eingebunden .endif ;werden müssen. .psect ; Programmanfangsadresse ProgStart: LoadW r0,ClearScreen;Zeiger auf ;Bildschirmlöschroutine jsr GraphicsString;Bildschirm ;löschen ausführen LoadW r0,Dtab ;Zeiger auf ;Dialogboxtabelle LoadW r5,Eing ;Zeiger auf ;Eingabestelle jsr DoDlgBox ;Dialogbox LoadW r0,Dtab2 ;Zeiger auf ;Tabelle Ausgabe LoadW r5,Eing ;Zeiger auf ;Ausgabestelle jsr DoDlgBox ;Dialogbox jmp EnterDesktop ;Programm beenden. Dtab: ;Eingabe-Dialogbox .byte SETDBPOS ö 1 ;Freie Box mit Schattenmuster 1 .byte 20,100 ;Obere und untere Grenze .word 20,300 ;Linke und rechte Ecke .byte DBTXTSTR ;Textausgabe vorbereiten .byte 10 ;X-Position .byte 50 ;Y-Position .word Ausg1 ; Zeiger auf auszugebenen Text .byte DBGETSTRING ;Indirekte Texteingabe vorbereiten .byte 10 ;an X- und .byte 62 ;Y Position .byte r5 ;Text an der in r5 stehenden ;Adresse speichern .byte 10 ;Maximal 10 Zeichen aufnehmen .byte NULL ;Ende der Tabelle Dtab2: ;Ausgabe-Dialogbox .byte SETDBPOS ö 3 ;Freie Box mit Schattenmuster 3 .byte 50,150 ;Obere und untere Grenze .word 100,200 ;Linke und rechte Ecke .byte DBTXTSTR ;Textausgabe vorbereiten .byte 10 ;X-Position .byte 20 ;Y-Position .word Antwort ;Zeiger auf auszugebenen Text .byte DBVARSTR ;Indirekte Textausgabe vorbereiten .byte 10 ;X-Position .byte 35 ;Y-Position .byte r5 ;In r5 steht die Adresse des ;auszugebenen Textes .byte OK ;OK-Feld anzeigen an .byte 20 ;X-Position in Byte .byte 50 ;Y-Position in Bit .byte NULL ;Ende der Dialogboxtabelle Ausg1: ;auszugebener Text für Dialogbox .byte "Wie heißen Sie ?" .byte NULL ;Ende des Textes Eing: ;Engabetext freihalten .byte 0,0,0,0,0,0,0,0,0,0 .byte NULL ;Ende des Eingabetextes Antwort: ;Ausgabetext für Dialogbox .byte "Ihr Name ist :" .byte NULL ;Ende des Ausgabetextes ClearScreen: >>Tabelle s. GUP 5 oder GeoProgramner<< ProgEnd: ;Programmendekennzeichen Wenn ihr schöne Demo's entwickelt habt, schickt sie mir bitte ein.
Jürgen Heinisch
Kurzlink hierhin: http://geos-printarchiv.de/892 |
|
Letzte Änderung am 01.11.2019 |