Möglichkeit Eingabe im Grafikmodus zu tätigen

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

Daniel85

Betreff: Möglichkeit Eingabe im Grafikmodus zu tätigen

BeitragSo, Jan 09, 2005 14:51
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo ihr
Wenn ich den Befehl Input verwende, öffnet sich ne Dos-Box, in der ich dann die Eingabe tätigen kann. Ist es auch möglich, die Eingabe im Grafikmodus zu tätigen?

Danke

Spikespine

BeitragSo, Jan 09, 2005 15:05
Antworten mit Zitat
Benutzer-Profile anzeigen
SUCHEN

Hubsi

BeitragSo, Jan 09, 2005 15:07
Antworten mit Zitat
Benutzer-Profile anzeigen
Eine eigene Inputroutine ist immer besser. Im Codearchiv gibts sicher einige Wink
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn...
 

Daniel85

BeitragSo, Jan 09, 2005 15:54
Antworten mit Zitat
Benutzer-Profile anzeigen
Da liegt ja das Problem. Ich steig durch die Input-Routinen nicht durch.
 

gamble

BeitragSo, Jan 09, 2005 15:55
Antworten mit Zitat
Benutzer-Profile anzeigen
Das ist aber deine einzigste Chance im Grafik-Modus eine Eingabe vom User zu bekommen.

D2006

Administrator

BeitragSo, Jan 09, 2005 16:08
Antworten mit Zitat
Benutzer-Profile anzeigen
Ist ja nicht so, dass die Dinger kompliziert sind.

Schau dir in Ruhe alle Befehle an und deren Bedeutung in der Onlinehilfe nach.
Am interessantesten ist hierbei der Befehl GetKey().

MfG
 

Gerhard

BeitragSo, Jan 09, 2005 17:10
Antworten mit Zitat
Benutzer-Profile anzeigen
Eigentlich ist es doch ganz einfach:

Du fragst mit getkey(), ob eine Taste gedrückt worden ist.
Wenn ja, dann hängst du diesen Tasteninhalt an deine Ergebnis-Variable und zeigst sie z.B. mit Text,10,10,ergebnis$.

Ein bisschen aufpassen musst du, weil Getkey() den ASCII-Wert zurückliefert, den du noch umwandeln musst.

Jetzt musst du dir nur noch überlegen, wie mache ich Backspace, einen Cursor, die Umsetzung der Pfeiltasten, überschreiben usw., die ganzen Feinheiten eben, die man noch benötigt.

Dafür gibts dann die ausgefeilten Sachen im Code-Archiv.

Code: [AUSKLAPPEN]

Graphics 800,600

While Not KeyDown(1)
   Cls
   eingabe = GetKey()
   If eingabe > 0 Then ergebnis$ = ergebnis$+Chr$(eingabe)
   Text 10,10,ergebnis$
   Flip
Wend
End
 

Daniel85

BeitragMo, Jan 10, 2005 9:00
Antworten mit Zitat
Benutzer-Profile anzeigen
Also ich hab mir jetzt nen Code zusammengesucht:

Code: [AUSKLAPPEN]

Repeat
   Cls
   Arial=LoadFont("Arial",22,False,False,False)
   SetFont Arial
   Text 320,300, "Bitte gib deinen Namen ein: ",True,False
   A = GetKey()
   If A > 31 Then Name$ = Name$ + Chr$(A)
   If (A = 8) And Len(Name$) > 0 Then Name$ = Left$(Name$, Len(Name$) -1)
   Text 320,350, Name$ + "_",True,False
   Flip
Until (Len(Name$) > 0) And KeyHit(28)


Funktioniert auch ganz gut, aber wenn der Name eingegeben wurde und Enter gedrückt wurde, welche Variable speichert dann den Namen??
 

Gerhard

BeitragMo, Jan 10, 2005 9:39
Antworten mit Zitat
Benutzer-Profile anzeigen
Name$
 

Daniel85

BeitragMo, Jan 10, 2005 10:17
Antworten mit Zitat
Benutzer-Profile anzeigen
Wenn ich die Namensschleife in ne Function gesetzt habe, kann ich dann die Variable name$ auch ausserhalb der Function verwenden?

BladeRunner

Moderator

BeitragMo, Jan 10, 2005 10:20
Antworten mit Zitat
Benutzer-Profile anzeigen
ja. indem du name$ globalisierst. Oder Name$ als Parameter an die Funktion gibst und ihn auch wieder von der Funktion returnst.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92
 

Daniel85

BeitragMo, Jan 10, 2005 10:38
Antworten mit Zitat
Benutzer-Profile anzeigen
Okay das mit dem Global hab ich hingekriegt (war auch nicht sonderlich schwer). Krieg aber andauernd ne Fehlermeldung Can't create font
Was ist das denn?

BladeRunner

Moderator

BeitragMo, Jan 10, 2005 10:53
Antworten mit Zitat
Benutzer-Profile anzeigen
Da dir anscheinend wichtige Grundlagen fehlen, empfehle ich Dir dich zuerst mit der Sprache an sich vertraut zu machen.
Auf www.robsite.de gibts gute Einsteigertutorials. Lad Dir auch die Deutsche OnlineHilfe von www.blitzbase.de runter.

Wenn Du die basics nicht lernst wird das nämlich nix Wink

Was Funktionsparameter angeht: siehe OnlineHilfe unter Function.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group