I'm creating a data editor at the moment, which is doing quite well. I've managed to get some edit boxes working - when clicked upon, you get a cursor and can edit the text within.
There are a few problems though. The main one is that I can't do cut and paste - not normally a problem but I'll be looking at including accents and language-specific characters using the Character Map. Without actually programming in a character map of my own, I don't see a way to do this.
Here's the code
Function editbox(clicked)
edits(clicked)\enteredText = edits(clicked)\enteredText + "|"
FlushKeys
Repeat
If edits(clicked)\textSize = 1
SetFont largefont
Else
SetFont smallfont
EndIf
If edits(clicked)\limitType = Pixels Then
If StringWidth(edits(clicked)\enteredText) >= edits(clicked)\limit
limit = True
Else
limit = False
End If
Else
If Len(edits(clicked)\enteredText) > edits(clicked)\limit
limit = True
Else
limit = False
End If
End If
a = GetKey()
If a>=32 And a<127 And (Not limit)
edits(clicked)\enteredText = Left$(edits(clicked)\enteredText, Len(edits(clicked)\enteredText)-1) + Chr$(a) + "|"
End If
If KeyHit(14) And Len(edits(clicked)\enteredText)>1
edits(clicked)\enteredText = Left$(edits(clicked)\enteredText, Len(edits(clicked)\enteredText)-2) + "|"
End If
updatescreen()
Until KeyHit(28)
edits(clicked)\enteredText = Left$(edits(clicked)\enteredText, Len(edits(clicked)\enteredText)-1)
End Function
|