Hi
I have a problem and need help ... please:)
I'm doing a program on CB, and drew a keyboard on the screen. In another part of the screen is a console (use "Input ()" instrucction).
The keyboard is numeric and has numbers 0 through 9 ... The idea is that clicking on the numbers of this keyboard to write the characters on the console.
That's my problem ... I can write to the console using the keyboard of my computer, but I want to write to this console using the keyboard that drew on the screen.
someone can put a source code example ???.... Thanks in advance.
Greetings. Bye.
Help with CONSOLE (Input instruction)
Re: Help with CONSOLE (Input instruction)
You don't need input for that. Just make a string variable, to which you can append the numbers when you click the buttons.Chopepo wrote:Hi
I have a problem and need help ... please:)
I'm doing a program on CB, and drew a keyboard on the screen. In another part of the screen is a console (use "Input ()" instrucction).
The keyboard is numeric and has numbers 0 through 9 ... The idea is that clicking on the numbers of this keyboard to write the characters on the console.
That's my problem ... I can write to the console using the keyboard of my computer, but I want to write to this console using the keyboard that drew on the screen.
someone can put a source code example ???.... Thanks in advance.
Greetings. Bye.
pseudocode example:
Code: Select all
str = ""
repeat
write str on screen
if mouseclick then
if mouse over a button
append the number of the clicked button to str
endif
endif
forever
CoolBasic henkilökuntaa
Kehittäjä
Kehittäjä
Re: Help with CONSOLE (Input instruction)
Hello:) Thanks for responding:
But I do not understand your answer. Look:
I need to do a calculator. Then, I have a numeric keypad screen, and above the keyboard is a text box to insert the numbers. I need you to click on the keypad numbers, these numbers are written in the text box.
But I do not understand your answer. Look:
I need to do a calculator. Then, I have a numeric keypad screen, and above the keyboard is a text box to insert the numbers. I need you to click on the keypad numbers, these numbers are written in the text box.
Re: Help with CONSOLE (Input instruction)
You mean something like this?chopepox wrote:Hello:) Thanks for responding:
But I do not understand your answer. Look:
I need to do a calculator. Then, I have a numeric keypad screen, and above the keyboard is a text box to insert the numbers. I need you to click on the keypad numbers, these numbers are written in the text box.
Code: Select all
inputstr$ = ""
Repeat
Color 255,255,255
Text 10,10,"Text:"+inputstr
x = 10
y = 50
For i = 0 To 9
addtostr = False
//Draw button and check if it's down
If KeyButton(i+48,x,y,20,20) Then addtostr = True
//Check key inputs
If i = 0 Then
If KeyHit(11) Then addtostr = True
Else
If KeyHit(i+1) Then addtostr = True
EndIf
//If button was pressed or key was hit then add number to string
If addtostr Then
inputstr$ = inputstr$ + i
EndIf
//Next coordinates....
x + 30
If x > 200 Then x = 10:y = y + 30
Next i
//Backspace
If KeyButton(60,x,y,20,20) Or KeyHit(14) Then
If Len(Inputstr$) > 0 Then
inputstr$ = Left(inputstr$,Len(inputstr$)-1)
EndIf
EndIf
DrawScreen
Forever
Function KeyButton(keycode,x,y,w,h)
If MouseX() > x And MouseX() < x+w And MouseY()>y And MouseY()<y+h Then
//If mouse over button
If MouseDown(1) Then
//If mouse button down
Color 150,150,150
Box x,y,w,h
Color 0,0,0
Text x+w/2-4,y+h/2-5,Chr(keycode)
Return False
ElseIf MouseUp(1)
//Mouse button released
Color 160,160,160
Box x,y,w,h
Color 0,0,0
Text x+w/2-4,y+h/2-5,Chr(keycode)
Return True
Else
Color 185,185,185
Box x,y,w,h
Color 0,0,0
Text x+w/2-4,y+h/2-5,Chr(keycode)
Return False
EndIf
EndIf
Color 200,200,200
Box x,y,w,h
Color 0,0,0
Text x+w/2-4,y+h/2-5,Chr(keycode)
Return False
EndFunction
Re: Help with CONSOLE (Input instruction)
Yes!!! all right!! is exactly what I wanted!! thanks! and excuse my bad English but I speak Spanish. xD.
Your program worked for me perfect:) Thank you.
Greetings.
Your program worked for me perfect:) Thank you.
Greetings.