Hilfe büdde(Chat)

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

ToeB

Betreff: Hilfe büdde(Chat)

BeitragMi, Dez 13, 2006 13:30
Antworten mit Zitat
Benutzer-Profile anzeigen
Code: [AUSKLAPPEN]

Graphics 640,480,16,2
SetBuffer BackBuffer()
Global i
While Not i = 255
i = i + 5
Color i,i,i
Rect 0,0,640,480
Flip
Wend
Color 0,0,0
For x = 20 To 600 Step 5
Rect 20,350,x,100
Rect 20,20,x,300
Flip
Next
Color 255,255,255

i = 10
Repeat

G$ = GetKey()
If G$ > 0
If Not G$ = 8
If Not G$ = 13
Chat$ = Chat$ + Chr$(G$)
EndIf
EndIf
EndIf

If G$ = 13 Then
i = i + 15
Text 20,i,Chat$
If i > 300 Then
Color 0,0,0
Rect 20,20,600,300
EndIf
Color 0,0,0
Rect 20,350,600,100
EndIf
If G$ = 8 Then
Chat$ = Mid(Chat$,1,Len(Chat$)-1)
EndIf

Text 20,350,Chat$
Flip
Until KeyHit(1)
End


Hier Mal der anfang des Chattes...Ich weiß es sieht noch nicht soaus abba es wird schon...
egal Rolling Eyes
1. frage:
Wie mach ich das das wenn man [Backspace] drückt, das der das dann auch auf dem Bildschirm löscht?
Weil das macht der bei mir immer nur "Geistlich".

2. frage:
Ich möchte das das geschriebene gelöscht wird wenn man [Enter] drückt.
Wie mach ich das außer dem schwarzen rechteck, weil dann kann man die farben nicht mehr ändern sonst kann das auch nicht Überschrieben werden...

thx schonmal,


Crack93
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art
SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek
Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt!
 

bruce85

BeitragMi, Dez 13, 2006 14:29
Antworten mit Zitat
Benutzer-Profile anzeigen
Ganz einfach, du musst den Bildschirm in der Schleife löschen mit "Cls".

Edit: ich hab dir das mal schnell gemacht:
Code: [AUSKLAPPEN]
Graphics 640,480,16,2
SetBuffer BackBuffer()

Global i
While Not i = 255
  i = i + 5
  Color i,i,i
  Rect 0,0,640,480
Flip
Wend

Color 0,0,0
For x = 20 To 600 Step 5
  Rect 20,350,x,100
  Rect 20,20,x,300
Flip
Next
 
Color 255,255,255

Repeat
  While Not KeyHit(28)
    Cls

    Color 255,255,255
    Rect 0,0,640,480
    Color 0,0,0
    Rect 20,350,x,100
    Rect 20,20,x,300

    G$ = GetKey()
    If G$ > 0 Then
      If Not G$ = 8 Then
        If Not G$ = 13 Then
          ;Asc Code in Buchstabe umwandeln und diese Buchstabe dann die Variable Chat$ hinzufügen
          Chat$ = Chat$ + Chr$(G$)
        EndIf
      EndIf
    EndIf

    ;Wenn die Rücktaste gedrückt wird, dann wird immer 1 Buchstabe gelöscht
    If G$ = 8 Then
      Chat$ = Mid(Chat$,1,Len(Chat$)-1)
    EndIf

    Color 255,255,255
    Text 20,30,Chat$
 
Flip
 
Wend
Until KeyHit(1)

WaitKey
End


MfG Andreas
AMD Athlon(tm) II X2 250, 8 GB DDR, MSI MSI 770-C45, GeForce GTS 250

ToeB

BeitragMi, Dez 13, 2006 17:24
Antworten mit Zitat
Benutzer-Profile anzeigen
danke...aba wie schaff ich das mit dem Das das dann oben angezeigt wird?
Villeicht so ein Code: [AUSKLAPPEN]

If G$ = 13 Then ; Wenn [Enter] gedrückt...
Text 20,20,Chat$
Chat$ = Mid(Chat$,1,Len(Chat$)-Len(Chat$))
EndIf
 

???
Religiöse Kriege sind Streitigkeiten erwachsener Männer darum, wer den besten imaginären Freund hat.
Race-Project - Das Rennspiel der etwas anderen Art
SimpleUDP3.0 - Neuste Version der Netzwerk-Bibliothek
Vielen Dank an dieser Stelle nochmal an Pummelie, welcher mir einen Teil seines VServers für das Betreiben meines Masterservers zur verfügung stellt!

Tankbuster

BeitragMi, Dez 13, 2006 17:34
Antworten mit Zitat
Benutzer-Profile anzeigen
probier doch einfach mal en bisschen aus =)
Twitter
Download Jewel Snake!
Windows|Android
 

Lion

BeitragMi, Dez 13, 2006 17:47
Antworten mit Zitat
Benutzer-Profile anzeigen
Tankbuster hat Folgendes geschrieben:
probier doch einfach mal en bisschen aus =)


Super Idee Rolling Eyes

Sag mal was du meinst , "das das dann oben angezeigt wird"
Meinst du das es dann nach oben verrutscht?

Dazu musste :
Code: [AUSKLAPPEN]
 Text 20,Text\y,"bla"


(würde die Texte dann mit types machen, und dann musste halt das Text\y mit -20 nach oben verschieben)

kA ob du das meinst , sags mal genauer...
Intel Core 2 Quad 4x2.66 ghz - 4gb ddr2 - nvidia GeForce GTX660 2gb
Intel Atom 1x1.83 ghz - 2gb ddr2 - intel GMA 3150 256mb
AMD A10-5750M 4x2.5 ghz - 8 gb ddr4 - AMD R9 M290x
 

bruce85

BeitragMi, Dez 13, 2006 17:55
Antworten mit Zitat
Benutzer-Profile anzeigen
Der möchte wenn man die Entertaste drückt, das dieser Text dann immer unten dran gehängt wird.

Ich würde das am besten mit Types machen, also immer wenn du ein Text schreibst und dann die Entertaste drückst, erzeugst du einfach ein Text mit einer variable die immer z.B. um 20 erhöht wird und übergibst dann die Y Position des Textes.

Probier einfach mal ein bisschen aus, du lernst nix wenn wir dir immer Codestücke posten Wink

MfG Andreas
AMD Athlon(tm) II X2 250, 8 GB DDR, MSI MSI 770-C45, GeForce GTS 250

Tankbuster

BeitragMi, Dez 13, 2006 18:04
Antworten mit Zitat
Benutzer-Profile anzeigen
Zitat:
probier doch einfach mal en bisschen aus =)

Ich meinte ja nur, dass er nicht wegen jedem bisschen im Forum nachfragen soll, sondern ein bisschen selber nachdenken!^^
Dadurch lernt man's nämlich viel schneller:!:
(nur so als tip gedacht Very Happy )
Twitter
Download Jewel Snake!
Windows|Android

ToeB

BeitragMi, Dez 13, 2006 19:31
Antworten mit Zitat
Benutzer-Profile anzeigen
ja...sry...werd jetzt immer vorher gründlich überlegen Wink
Danke Nochmal !

Aba Ich hab es mit Types gelöst !
Hier der Code: [AUSKLAPPEN]

Graphics 640,480,16,2
SetBuffer BackBuffer()

Type c
Field x
Field y
Field tex$
End Type



Global c.c
Global Chat$

For x = 1 To 255 Step 5
Color x,x,x
Rect 0,0,640,480
Flip
Next

i = 255


For x = 20 To 600 Step 5
i = i - 2.5
Color i,i,i
Rect 20,350,x,100
Rect 20,20,x,300
Flip
Next
Color 255,255,255

i = 10

While Not KeyHit(1)

Cls

Color 255,255,255
Rect 0,0,640,480
Color 0,0,0
Rect 20,20,600,300
Rect 20,350,600,100
Color 255,255,255


G$ = GetKey()
If G$ > 0
If Not G$ = 8
If Not G$ = 13
Chat$ = Chat$ + Chr$(G$)
EndIf
EndIf
EndIf



If G$ = 8 Then
Chat$ = Mid(Chat$,1,Len(Chat$)-1)
EndIf


If G$ = 13 Then
i = i + 20
c.c = New c
c\x = 20
c\y = i
c\tex$= Chat$
Chat$ = Mid(Chat$,1,Len(Chat$)-Len(Chat$))
EndIf

For c.c = Each c
Text c\x,c\y,c\tex
Next

Text 20,350,Chat$

Flip
Cls

Wend

End





Very Happy

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group