I have a list of stocks and want to create a percent
swing chart. I can return the value of my percent that
I choose with the option button and display it with the
MSGBOX, but I am having trouble figuring out how to
return the string (stock) I choose in my combobox and
have it display in the MSGBOX as well. I'm missing something.
Maybe a CALLBACK FUNCTION of some sort?? Otherwise,
everything displays on the screen OK. Any tips??
------------------------------------------------------
#COMPILE EXE
#INCLUDE "win32api.inc"
GLOBAL perc AS DOUBLE
GLOBAL s AS STRING
GLOBAL hDlg AS LONG
CALLBACK FUNCTION OkButton()
DIALOG END CBHNDL, 1
END FUNCTION
CALLBACK FUNCTION CancelButton()
DIALOG END CBHNDL, 0
END FUNCTION
CALLBACK FUNCTION List1()
IF CBCTLMSG = %BN_CLICKED THEN
IF CBCTL = 101 THEN perc# = .05#
IF CBCTL = 102 THEN perc# = .10#
IF CBCTL = 103 THEN perc# = .125#
IF CBCTL = 104 THEN perc# = .15#
IF CBCTL = 105 THEN perc# = .175#
IF CBCTL = 106 THEN perc# = .20#
IF CBCTL = 107 THEN perc# = .25#
IF CBCTL = 108 THEN perc# = .30#
END IF
END FUNCTION
'<=====?CALLBACK HERE AND PLACE SELECTION INTO s$
'------------------------------------------------------------------------------
FUNCTION PBMAIN () AS LONG
$REGISTER NONE
' ** Create a new dialog template
DIALOG NEW hParent&, "LOG SPIRAL", 0, 0, 367, 250,%WS_CAPTION _
OR %WS_SYSMENU OR %WS_MINIMIZEBOX OR %DS_CENTER, 0 TO hDlg
' ** Add controls to it
CONTROL ADD BUTTON, hDlg, %IDOK, "OK", 300, 185, 40, 14, _
%BS_DEFAULT CALL OkButton
CONTROL ADD BUTTON, hDlg, %IDCANCEL, "Cancel", 300, 210, 40, _
14, 0 CALL CancelButton
CONTROL ADD FRAME,hDlg,-1,"choose a percent",30,50,70,175, _
%WS_CHILD OR %WS_VISIBLE OR %BS_GROUPBOX OR %WS_EX_TRANSPARENT
CONTROL ADD OPTION,hDlg,101,"5%",40,65,53,12 CALL list1
CONTROL ADD OPTION,hDlg,102,"10%",40,85,53,12 CALL list1
CONTROL ADD OPTION,hDlg,103,"12.5%",40,105,53,12 CALL list1
CONTROL ADD OPTION,hDlg,104,"15%",40,125,53,12 CALL list1
CONTROL ADD OPTION,hDlg,105,"17.5%",40,145,53,12 CALL list1
CONTROL ADD OPTION,hDlg,106,"20%",40,165,53,12 CALL list1
CONTROL ADD OPTION,hDlg,107,"25%",40,185,53,12 CALL list1
CONTROL ADD OPTION,hDlg,108,"30%",40,205,53,12 CALL list1
DIM A$
DIM B$(1:100)
ThePath$ = "G:\test\data"
A$ = DIR$(ThePath$ + "/*.ac5")
WHILE LEN(A$)
INCR c&
A$ = DIR$
B$(c&)= RTRIM$(A$,".AC5")
WEND
REDIM PRESERVE B$(1 TO c&)
CONTROL ADD COMBOBOX, hDlg,301,B$(), 200, 52, 50, 100, _
%CBS_DROPDOWNLIST OR %CBS_SORT
' ** Display the dialog
DIALOG SHOW MODAL hDlg
MSGBOX FORMAT$(perc#)+ " " + s$ '<===perc# displays..need s$
END FUNCTION
swing chart. I can return the value of my percent that
I choose with the option button and display it with the
MSGBOX, but I am having trouble figuring out how to
return the string (stock) I choose in my combobox and
have it display in the MSGBOX as well. I'm missing something.
Maybe a CALLBACK FUNCTION of some sort?? Otherwise,
everything displays on the screen OK. Any tips??
------------------------------------------------------
#COMPILE EXE
#INCLUDE "win32api.inc"
GLOBAL perc AS DOUBLE
GLOBAL s AS STRING
GLOBAL hDlg AS LONG
CALLBACK FUNCTION OkButton()
DIALOG END CBHNDL, 1
END FUNCTION
CALLBACK FUNCTION CancelButton()
DIALOG END CBHNDL, 0
END FUNCTION
CALLBACK FUNCTION List1()
IF CBCTLMSG = %BN_CLICKED THEN
IF CBCTL = 101 THEN perc# = .05#
IF CBCTL = 102 THEN perc# = .10#
IF CBCTL = 103 THEN perc# = .125#
IF CBCTL = 104 THEN perc# = .15#
IF CBCTL = 105 THEN perc# = .175#
IF CBCTL = 106 THEN perc# = .20#
IF CBCTL = 107 THEN perc# = .25#
IF CBCTL = 108 THEN perc# = .30#
END IF
END FUNCTION
'<=====?CALLBACK HERE AND PLACE SELECTION INTO s$
'------------------------------------------------------------------------------
FUNCTION PBMAIN () AS LONG
$REGISTER NONE
' ** Create a new dialog template
DIALOG NEW hParent&, "LOG SPIRAL", 0, 0, 367, 250,%WS_CAPTION _
OR %WS_SYSMENU OR %WS_MINIMIZEBOX OR %DS_CENTER, 0 TO hDlg
' ** Add controls to it
CONTROL ADD BUTTON, hDlg, %IDOK, "OK", 300, 185, 40, 14, _
%BS_DEFAULT CALL OkButton
CONTROL ADD BUTTON, hDlg, %IDCANCEL, "Cancel", 300, 210, 40, _
14, 0 CALL CancelButton
CONTROL ADD FRAME,hDlg,-1,"choose a percent",30,50,70,175, _
%WS_CHILD OR %WS_VISIBLE OR %BS_GROUPBOX OR %WS_EX_TRANSPARENT
CONTROL ADD OPTION,hDlg,101,"5%",40,65,53,12 CALL list1
CONTROL ADD OPTION,hDlg,102,"10%",40,85,53,12 CALL list1
CONTROL ADD OPTION,hDlg,103,"12.5%",40,105,53,12 CALL list1
CONTROL ADD OPTION,hDlg,104,"15%",40,125,53,12 CALL list1
CONTROL ADD OPTION,hDlg,105,"17.5%",40,145,53,12 CALL list1
CONTROL ADD OPTION,hDlg,106,"20%",40,165,53,12 CALL list1
CONTROL ADD OPTION,hDlg,107,"25%",40,185,53,12 CALL list1
CONTROL ADD OPTION,hDlg,108,"30%",40,205,53,12 CALL list1
DIM A$
DIM B$(1:100)
ThePath$ = "G:\test\data"
A$ = DIR$(ThePath$ + "/*.ac5")
WHILE LEN(A$)
INCR c&
A$ = DIR$
B$(c&)= RTRIM$(A$,".AC5")
WEND
REDIM PRESERVE B$(1 TO c&)
CONTROL ADD COMBOBOX, hDlg,301,B$(), 200, 52, 50, 100, _
%CBS_DROPDOWNLIST OR %CBS_SORT
' ** Display the dialog
DIALOG SHOW MODAL hDlg
MSGBOX FORMAT$(perc#)+ " " + s$ '<===perc# displays..need s$
END FUNCTION
Comment