Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Calculator
#7
I would work the number pad like this:

Function Calculator
Code:
Copy      Help
\Dialog_Editor
function# hDlg message wParam lParam
if(hDlg) goto messages

;BEGIN DIALOG
;0 "" 0x90C80A44 0x100 0 0 211 92 "QM Calculator"
;3 Button 0x54032000 0x0 10 56 48 14 "1"
;4 Button 0x54032000 0x0 58 56 48 14 "2"
;5 Button 0x54032000 0x0 106 56 48 14 "3"
;6 Button 0x54032000 0x0 10 42 48 14 "4"
;7 Button 0x54032000 0x0 58 42 48 14 "5"
;8 Button 0x54032000 0x0 106 42 48 14 "6"
;9 Button 0x54032000 0x0 10 28 48 14 "7"
;10 Button 0x54032000 0x0 58 28 48 14 "8"
;11 Button 0x54032000 0x0 106 28 48 14 "9"
;12 Button 0x54032000 0x0 156 70 48 14 "."
;13 Button 0x54032000 0x0 156 28 48 14 "+"
;14 Button 0x54032000 0x0 156 42 48 14 "-"
;15 Button 0x54032000 0x0 156 56 48 14 "/"
;16 Button 0x54032000 0x0 10 70 144 14 "="
;17 Edit 0x54030080 0x200 10 12 194 14 ""
;END DIALOG
;DIALOG EDITOR: "" 0x2030001 "" "" ""

str controls = "17"
str e17 Number
e17=0
if(!ShowDialog("Calculator" &Calculator &controls)) ret

ret
;messages
sel message
,case WM_INITDIALOG
,case WM_DESTROY
,case WM_COMMAND goto messages2
ret
;messages2
sel wParam
,case 3
,Number="1"
,Numbers Number
,case 4
,Number="2"
,Numbers Number
,case 5
,Number="3"
,Numbers Number
,case 6
,Number="4"
,Numbers Number
,case 7
,Number="5"
,Numbers Number
,case 8
,Number="6"
,Numbers Number
,case 9
,Number="7"
,Numbers Number
,case 10
,Number="8"
,Numbers Number
,case 11
,Number="9"
,Numbers Number
,case 12
,str a.getwintext(id(17 win("QM Calculator" "#32770")))
,Number="."
,a.trim("0123456789")
,if a="."
,,ret
,Numbers Number
,case IDOK
,case IDCANCEL
ret 1

Function Numbers
Code:
Copy      Help
function str&Number
if Number="."
,str a.getwintext(id(17 win("QM Calculator" "#32770")))
,str b.format("%s." a)
,b.setwintext(id(17 win("QM Calculator" "#32770")))ret
else
,str wText.getwintext(id(17 win("QM Calculator" "#32770")))
,if wText="0"
,,wText.ltrim("0")
,str Set.format("%s%s" wText Number)
,Set.setwintext(id(17 win("QM Calculator" "#32770")))


Messages In This Thread

Forum Jump:


Users browsing this thread: 1 Guest(s)