Meine Eingaberoutine geht net!

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

 

Blitzkrieg Bop

Betreff: Meine Eingaberoutine geht net!

BeitragSa, März 27, 2004 16:39
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi!
Folgende Routine lkiegt vor:
Code: [AUSKLAPPEN]

Function name()
Repeat
;Cls
;Text 0,0, "Press F1 to change Message of the day"
;Text 0,20, "Current message of the day: " ;+ Befehl$
Eingabe =  Eingabe Xor 1
If Eingabe = 1 Then
                                                 
                                                 
befehl$ = newinput$(425,280,535,305,">>", 20)
If befehl$ = "exit" Then End                 
Text 100,700, befehl$  ; dort wird der Name angezeigt                     
EndIf
Flip
Forever
End Function

Function newinput$(x1,y1,x2,y2,frage$,maxl)
Repeat
a = GetKey() ;32
If a => 32 And a <= 255 And Len(antwort$) <= maxl-1 Then antwort$ = antwort$ + Chr$(a)
If KeyDown(28) Then Eingabe = 0 Return antwort$
If KeyDown(14) Or KeyDown(203) And Len(antwort$) > 0 And MilliSecs()-backtime > 125 Then ;125
antwort$ = Left(antwort$,(Len(antwort$)-1))
backtime = MilliSecs()
End If
Color 25,100,200
Rect x1,y1,x2-x1, y2-y1,1
Color 10,50,150
Rect x1,y1,x2-x1, y2-y1,0
textlange = StringWidth(antwort$) ;Blinkener Cursor
texthohe = StringHeight(antwort$)
fragelange = StringWidth(frage$)
Color 0,50,ccolor
Rect x1+28+(Len(antwort$)*8),y1+4,10,texthohe-1,1
ccolor = ccolor + 5
If ccolor = 255 Then ccolor = 100
Color 255,255,255
Text x1+3,y1+3, frage$ + " " + antwort$
Flip
Forever
End Function


fie routine klappt auch, bloß ich komm nicht damit klar, wie ich das kästen verschieben kann und die max.länge der buchstaben festlegen kann. ich hoffe dabei auf hilfe von Triton, weil es seine Routine is, die ich mir rausgezo´gen hab'!

es muss also mit dme befehl
Code: [AUSKLAPPEN]

befehl$ = newinput$(425,280,535,305,">>", 20)


zu tun haben! aber ich weiß nicht genau! also: ich will das kästen vershcieben, und die max schriftlänge festlegen können
~ Hey Ho Let's Go ~

Triton

BeitragSa, März 27, 2004 18:12
Antworten mit Zitat
Benutzer-Profile anzeigen
Die Maximale Schriftlänge (in Zeichen) wird mit dem letzten Parameter angegeben, die Position und größe mit den ersten 4.

Wo ist das Problem? - und warum hast du das alles mehrfach in Repeat-forever schleifen? Smile
 

Blitzkrieg Bop

BeitragSa, März 27, 2004 18:15
Antworten mit Zitat
Benutzer-Profile anzeigen
ja, das hat schon seinen sinn ^^
aber dsa ist irgendwie komisch, wenn ich nur die position ändern will, mit welchen variabeln muss ich das machen? x1 und y1 oder x2 und y2 ? das check ich noch nciht so
~ Hey Ho Let's Go ~

Triton

BeitragSa, März 27, 2004 18:15
Antworten mit Zitat
Benutzer-Profile anzeigen
x1 und y1 geben die obere linke ecke des Kästchens an, x2 und y2 entsprechend die untere rechte.
 

Blitzkrieg Bop

BeitragSa, März 27, 2004 18:18
Antworten mit Zitat
Benutzer-Profile anzeigen
und die müssen immer im verhältnis stehen? kann dsa sein?
~ Hey Ho Let's Go ~

Triton

BeitragSo, März 28, 2004 4:30
Antworten mit Zitat
Benutzer-Profile anzeigen
Verhältnis? oO

Ähm, nein..

Die solltem aber zumindest so groß sein, dass der Text nicht aus dem Kästchen schreibt Smile

Du kannst das ganze natürlich auch so umcoden, dass garkein Kästchen mehr gemal wird, dazu bräuchte man dann verständlicherweise nurnoch x1 und y1.

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group