Fragen zum String?

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

 

blackmaster

Betreff: Fragen zum String?

BeitragFr, Aug 04, 2006 23:02
Antworten mit Zitat
Benutzer-Profile anzeigen
hallo,
ich wollte mir eigentlich ein Chat schreiben, ich wollt für den anfang erst wenn ich z.B. die Eingabe Taste gedrückt habe das es dann immer Untereinander eingefügt wird so wie RichEdit, hier mal mein Code:

Code: [AUSKLAPPEN]
Graphics 640,480,16,2
SetBuffer BackBuffer()

Global schrift = LoadFont("Arial",20,0,0,0)
SetFont schrift

Global backround = LoadImage("backround.png")
MaskImage backround,255,0,255

Global Eingabe$,Wert

Repeat
  Cls

  DrawImage backround,0,0
  EingabeInput()

  Flip
Until KeyHit(1)

End

Function EingabeInput()

  b$ = GetKey()

  If b > 0 Then
    Eingabe = Eingabe + Chr$(b$)
  EndIf

  If b = 8 Then
    Eingabe$ = Mid(Eingabe$,1,Len(Eingabe$)-2)
  EndIf

  If KeyHit(28) Then
    ;.........
    Eingabe$ = ""
  EndIf

  Color 0,0,128
  Text 16,446,Eingabe$

End Function


und wenn ich dann die Entertaste drücke, dann soll es wie im Chat oben eingefügt werden, könnt ihr mir vieleicht paar tips geben wie ich das hinbekomme?

MFG Markus

etlam

BeitragSa, Aug 05, 2006 11:33
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo,
weiß jetzt zwar nicht, was du mit RichEdit meinst, hoffe aber das dir das hier Hilft:
Code: [AUSKLAPPEN]
Graphics 640,480,16,2
SetBuffer BackBuffer()

Global schrift = LoadFont("Arial",20,0,0,0)
SetFont schrift

;Global backround = LoadImage("backround.png")
;MaskImage backround,255,0,255

Global Eingabe$,Wert
Type oben
   Field wo%
   Field was$
End Type
Global wo% = 0
Repeat
     Cls
     ;DrawImage backround,0,0
   EingabeInput()
     Local i.oben
   For i = Each oben
      Text 10,i\wo%,i\was$
   Next
     Flip
Until KeyHit(1)

End

Function EingabeInput()

  b% = GetKey()
  If b% > 0 Then
    If Not b% = 13 Then
       Eingabe = Eingabe + Chr$(b%)
   End If
  EndIf
  If b% = 8 Then
    Eingabe$ = Mid(Eingabe$,1,Len(Eingabe$)-2)
  EndIf

  If b% = 13
    ;.........
     a.oben = New oben
   wo% = wo% + 20
   a\wo% = wo%
   a\was$ = Eingabe$
   Eingabe$ = ""
  EndIf

  Text 16,446,Eingabe$
End Function

das ganze funktioniert mit Types, wenn man die Eingabetaste drückt, wird ein neuer type-eintrag erstellt, in dem dann steht, wie tief der Text geschrieben werden soll, und der Text selber.
Ein Type Tutorial findest du hier
etlam

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group