TextEingabe Feld
Übersicht

![]() |
Mathias-KwiatkowskiBetreff: TextEingabe Feld |
![]() Antworten mit Zitat ![]() |
---|---|---|
hi, ich habe mir hier mal ein kleines texteingabe feld programmiert, ist es so gut? ( frage an progfis ^^ ) falls nicht wie macht man es besser?
ansonsten habe ich auch noch eine frage sonst würde ich ja hier falsch sein, man kann mit dem cursor nach rechts und nach links wandern aber schreiben tut er immer nur am ende, und das dürfte ja nicht sein. wie mache ich es nun das er da schreibt wo der cursor gerade ist? währe echt eine erleichterung wenn jemand den code besser gesatallten kann oder erweitern kann und ihn dann hier zurückposten kann, da ich keinen ausweg mehr weiss. aber hier der code Code: [AUSKLAPPEN] Graphics 800,600,32,2
Global Benutzereingabe$, BenutzereingabeTemp$ Global Befinden=0 Global Maxweite=300/StringWidth("W") Repeat Cls Color 255,255,255 Rect 50,50,300,20,0 Color 192,192,192 Text 52,53,BenutzereingabeTemp$ Color 255,0,0 If Befinden=>Maxweite Then Befinden = Maxweite If Befinden=<0 Then Befinden=0 If Befinden=>Len(BenutzereingabeTemp) Then Befinden=Len(BenutzereingabeTemp) Line 50+Befinden*StringWidth("W")+2,48, 50+Befinden*StringWidth("W")+2,74 Eingabe() Flip Until KeyDown(1) End Function Eingabe() a=GetKey() If a<>0 Then If a=8 Then Benutzereingabe$=Left (Benutzereingabe$,Len(Benutzereingabe)-1) Befinden=Befinden-1 Goto Uberspring EndIf If a=63234 Then Befinden=Befinden-1 :Goto Uberspring If a=63235 Then Befinden=Befinden+1 :Goto Uberspring Befinden=Befinden+1 Benutzereingabe$=Benutzereingabe+Chr(a) .Uberspring EndIf ;String umwandeln damit es noch im textfield reinpasst If StringWidth (Benutzereingabe)=>300 Then ;hier muss nun der string verschoben werden damit man naja was eingeben kann ^^ For zahl=1 To Len(Benutzereingabe) BenutzereingabeTemp$=Right(Benutzereingabe,zahl) If StringWidth(BenutzereingabeTemp)>300-StringWidth("W") Then Exit Next Else BenutzereingabeTemp$=Benutzereingabe$ EndIf End Function danke wie immer im voraus |
||
![]() |
Silver_Knee |
![]() Antworten mit Zitat ![]() |
---|---|---|
nimm den text an der stelle auseinander mit dem Code: [AUSKLAPPEN] mid(BenutzereingabeTemp,0,befinden) bekommst du das vor dem curser und mit dem Code: [AUSKLAPPEN] mid(BenutzereingabeTemp,befinden+1) das was nach dem curder steht damit lässt sich auch das mit dem stringwidth("W") verbessern
|
||
![]() |
Mathias-Kwiatkowski |
![]() Antworten mit Zitat ![]() |
---|---|---|
wie soll ich das machen, bei mir funktioniert es nichtmal richtig ^^ | ||
![]() |
TheMatrix |
![]() Antworten mit Zitat ![]() |
---|---|---|
Naja ist noch einiges Verbesserungswürdig. Üb nochmal weiter und sie dir mal ein Inputfeld an (Bsp. Html:<input>). Das kann man eigentlich alles nachproggen. | ||
°_° °.° °~° °v° .. -.- |
![]() |
Mathias-Kwiatkowski |
![]() Antworten mit Zitat ![]() |
---|---|---|
das man es nachproggen kann weiss ich, die frage ist nur wie wird es vernümpftig gemacht? wie baut man sowas also ganz perfekt auf? | ||
![]() |
Markus2 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Asyncrone Eingabe Routine
https://www.blitzforum.de/foru...highlight= |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group