Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Populate combo from INI
#1
Hi,

I'm trying to populate a combo control from a an INI file.

I can get it to work using separate INI key/value pairs for each item and concat'ing them in the macro using 'cb3.from(item1[]item2...etc) but can't get it to work using a single line like below.

What I need is to be able to add more items at any time thru the INI and have the EXE pick them up.

Using the below method, all the items end up on the same line -- QM seems to treat the brackets in the INI-imported as escaped text (unlike as line/item breaks when the "cb3 =" line originates from the macro). I've been trying an array method but not quite able to get it to work yet... Thanks for any help!

S

(edit): I am trying to avoid having to switch to XML as the INI (created as part of fairly complex install routine) has 50+ items in it, with corresponding entries in the macro and it would be a major drag to have to redo it all...

c:\combo.ini:
Code:
Copy      Help
[COMBO]
cb3="one[]two[]three"

Macro
Code:
Copy      Help
str controls = "3"
str cb3
rget(cb3 "cb3" "combo" "c:\combo.ini")
if(!ShowDialog("Dropdown" &Dropdown &controls)) ret
out cb3

And example dialog:

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

;BEGIN DIALOG
;0 "" 0x90C80A44 0x100 0 0 223 135 "Dialog"
;1 Button 0x54030001 0x4 120 116 48 14 "OK"
;2 Button 0x54030000 0x4 170 116 48 14 "Cancel"
;3 ComboBox 0x54230243 0x0 56 38 104 213 ""
;END DIALOG
;DIALOG EDITOR: "" 0x2030001 "" "" ""

ret
;messages
sel message
,case WM_INITDIALOG
,case WM_DESTROY
,case WM_COMMAND goto messages2
ret
;messages2
sel wParam
,case IDOK
,case IDCANCEL
ret 1


Messages In This Thread

Forum Jump:


Users browsing this thread: 1 Guest(s)