Namenseingabe Prob.
Übersicht

![]() |
CerbusBetreff: Namenseingabe Prob. |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hi! Zusammen.
Ich stehe vor nem kleinen Problem. Nämlich ich möchte das alles weiterläuft und man trotzdem dem Namen eingeben kann ohne dass das Programm auf einen Befehl wartet. Ich komm leider nicht dahinter wie man die 2 Sachen unabhängig von einander laufen lassen kann. Code: [AUSKLAPPEN] AppTitle "Programm"
Graphics 800, 600, 16, 1 SetBuffer BackBuffer() AutoMidHandle 1 ;Bezugspunkt der Bilder in mitte setzen ;Variablen Pfad$ = ".\Grafik\" ;Laden der Grafik Global Background = LoadImage (Pfad$ + "Menu.png") Global Mauszeiger = LoadImage (Pfad$ + "Maus.png") Global YBild Global XBild ;Hauptprogramm Repeat XBild=MouseX() YBild=MouseY() Cls Menu() Maus() ;Text 400,200,"Spielername:" ;Locate 400,250 ;Spielername$ = Input() ;Text 400,300,"Herzlich Willkommen " + Spielername$ Flip Until MouseHit(2) End Function Menu() DrawImage Background, 400, 300 End Function Function Maus() DrawImage Mauszeiger, XBild, YBild End Function Also ich meine, wärend man den Namen eingibt kann man auch die Maus ohne Probleme bewegen, ohne das er wartet bis ich den Namen eingeben habe. Hoffe ihr versteht was ich meine. ![]() |
||
getlose |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
schauh mal im Codearchiv nach. dort findest du entsprechende
Eingaberoutinen. |
||
![]() |
Sebi |
![]() Antworten mit Zitat ![]() |
---|---|---|
Das würd mich auch intressieren wie das geht, kann es aber nicht finden!
Gruß Sebi |
||
![]() |
DA |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wen ihr robs tut 2 habt, dann müsst ihr einfach euch dat Spiel "HeliHunter" angucken. Dort ist eine routine dafür drin.
Ich hoffe das es das ist wat ihr meint. Thx DarkAngel |
||
Deutscher Blitz Basic Chat |
![]() |
The Yeti |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich denke, das macht man am besten mit GetKey und Char(). | ||
![]() |
Cerbus |
![]() Antworten mit Zitat ![]() |
---|---|---|
@DarkAngel
Hab das Programm HeliHunter da, aber weiß nicht wo da die Lösung für das Problem sein soll. @The Yeti Ich versteh nich ganz wie du das meinst. Wie macht man dann daraus ne Zeichenkettte. Kann mir das mit GetKey nicht wirklich vorstellen. |
||
Blitzkrieg Bop |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Wie wärs z.B damit :
https://www.blitzforum.de/view...aberoutine |
||
~ Hey Ho Let's Go ~ |
![]() |
TheProgrammer |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hab auch mal was gemacht:
Code: [AUSKLAPPEN] Graphics 120,70,32,2 AppTitle "Eingaberoutine" ClsColor 192,192,192 Global tahoma = LoadFont("Tahoma",16,0,0,0) Global chat_stat Global time Global change Global cursor_eingabe = CreateImage(7,16) Dim cursor(6,15) Restore cursor_eingabe MaskImage cursor_eingabe,255,0,255 SetBuffer ImageBuffer(cursor_eingabe) LockBuffer() For Y = 0 To 15 For X = 0 To 6 Read cursor(X,Y) Select cursor(X,Y) Case 0 WritePixelFast X,Y,$FFFF00FF Case 1 WritePixelFast X,Y,$FF000000 End Select Next Next UnlockBuffer() SetBuffer BackBuffer() While Not KeyHit(1) Cls ResetEingabe() eingabe1$ = Eingabe(10,10,100,eingabe1$,1) eingabe2$ = Eingabe(10,40,100,eingabe2$,2) UpdateEingabe() Flip Wend End Function Eingabe$(x1,y1,x2,antwort$,stat) Color 255,255,255 Rect x1,y1,x2,20,1 Color 0,0,0 Rect x1,y1,x2,20,0 If chat_stat = stat Then a = GetKey() If a => 33 And a <= 126 Then antwort$ = antwort$ + Chr$(a) If KeyHit(57) Then antwort$ = antwort$ + " " If KeyHit(14) And Len(antwort$) > 0 Then antwort$ = Left(antwort$,(Len(antwort$)-1)) EndIf EndIf If RectsOverlap(MouseX(),MouseY(),1,1,x1,y1,x2,20) Then If MouseDown(1) Then chat_stat = stat DrawImage cursor_eingabe,MouseX()-3,MouseY()-8 HidePointer() EndIf textlange = StringWidth(antwort$) texthohe = StringHeight(antwort$) SetFont tahoma Color 0,0,0 antwort2$ = antwort While StringWidth(antwort2$) > x2-6 antwort2$ = Mid(antwort2$,2,Len(antwort2$)) Wend Text x1+3,y1+10,antwort2$,0,1 If change = 1 And chat_stat = stat Then Rect x1+3+StringWidth(antwort2$),y1+2,1,16 Return antwort$ End Function Function ResetEingabe() ShowPointer() End Function Function UpdateEingabe() time = time + 1 If time = 30 Then time = 0 : change=1-change End Function .cursor_eingabe Data 1,1,1,0,1,1,1 Data 0,0,0,1,0,0,0 Data 0,0,0,1,0,0,0 Data 0,0,0,1,0,0,0 Data 0,0,0,1,0,0,0 Data 0,0,0,1,0,0,0 Data 0,0,0,1,0,0,0 Data 0,0,0,1,0,0,0 Data 0,0,0,1,0,0,0 Data 0,0,0,1,0,0,0 Data 0,0,0,1,0,0,0 Data 0,0,0,1,0,0,0 Data 0,0,0,1,0,0,0 Data 0,0,0,1,0,0,0 Data 0,0,0,1,0,0,0 Data 1,1,1,0,1,1,1 ...und eine kleine Verbesserung... |
||
aktuelles Projekt: The last day of human being |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group