Event wenn MouseDown in TextArea

Übersicht BlitzBasic BlitzPlus

Neue Antwort erstellen

Garfield

Betreff: Event wenn MouseDown in TextArea

BeitragSa, März 20, 2004 15:01
Antworten mit Zitat
Benutzer-Profile anzeigen
Gibt es irgendeinen von mir übersehen Befehl, ein Event zu erzeugen, wenn ich mit der Maus NUR in ein Text Feld klicke?
MouseDown funktioniert leider nur bei Labels...

Ich möchte nicht für sämtliche TextAreas X und Y Koordinaten eingeben und die Mausposition überprüfen......

Ich probiere schon eine Tag lang, ein Werte-Eingabefeld für mein Mathematik Programm zu erfinden... ich verzweifele...
Eine Function für die Umwandlung von Stringwerten in reelle Zahlen hab ich schon, ich hab aaber uch noch keine Möglichkeit gefunden, wenn man in einem Gadget ist die KeyDown Befehle abzufangen....ich brauch ja schließlich noch ein ENTER für die Eingabebestätigung...

TheShadow

Moderator

BeitragSa, März 20, 2004 15:30
Antworten mit Zitat
Benutzer-Profile anzeigen
http://www.blitzbase.de/downloads/scintilla.zip

ist zwar nicht das selbe - aber muss mit textarea genau so funktionieren - du musst windows-messages abgreifen....
AMD64 3500+ | GeForce6600GT 128MB | 1GB DDR | WinXPsp2

Garfield

BeitragSa, März 20, 2004 15:42
Antworten mit Zitat
Benutzer-Profile anzeigen
Danke Shadowi,
ch versuchs aber erstmal mit eigenen Mitteln
hab schon was gefunden:
musste nur draufkommen, das nicht chr$(13) gefragt ist sondern chr$(10)
(stand glaub ich schon mal ganz früher im Forum, das nicht CR sondern LF ausgegeben wird)

Es können nur Zahle und Kommas eingegeben werden
bei Enter ist Schluss

Code: [AUSKLAPPEN]
Function Eingabe(bb,InputFeld)

EnableGadget InputFeld
SetGadgetText InputFeld,""

Repeat

Textinput$ = TextAreaText$( InputFeld )
   If Right$(Textinput$,1) > Chr$(57)  ; größer Zahl 9
      Textinput$ = LSet$(Textinput$,Len(Textinput$)-1)
      SetTextAreaText InputFeld,TextInput$
   EndIf
   If Right$(Textinput$,1) < Chr$(48) ;kleiner Zahl 0
      If Right$(Textinput$,1) <> Chr$(10) ;ungleich Enter
         If Right$(Textinput$,1) <> Chr$(44) ;kein Komma
            Textinput$ = LSet$(Textinput$,Len(Textinput$)-1)
            SetTextAreaText InputFeld,TextInput$
         EndIf
      EndIf
   EndIf
   
Until Right$(Textinput$,1) = Chr$(10)

Textinput$ = LSet$(Textinput$,Len(Textinput$)-1)
SetTextAreaText InputFeld,TextInput$
SetStatusText main_window,Textinput$



End Function

Neue Antwort erstellen


Übersicht BlitzBasic BlitzPlus

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group