Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Mirroring the output pane on a progress bar
#1
Hi guys,

I want to "mirror" QM's output pane on a static text control of a dialog that should be created upon launching the macro and be "updated" while it executes, to inform the user on what's going on. 

I've looked at the Progress Bar examples in Archive but I don't understand how to "link" the dialog's text control to the macro execution steps and making it showing the value of the string variable being sent to the output pane in QM.

Any help would be much appreciated.

Thanks in advance
#2
Macro Macro203
Code:
Copy      Help
;/exe


str dd=
;BEGIN DIALOG
;0 "" 0x90C80AC8 0x0 0 0 224 136 "Dialog" "4"
;3 Static 0x54000000 0x0 8 8 210 56 ""
;1 Button 0x54030001 0x4 116 116 48 14 "OK"
;2 Button 0x54030000 0x4 168 116 48 14 "Cancel"
;END DIALOG
;DIALOG EDITOR: "" 0x2040800 "*" "" "" ""

if(!ShowDialog(dd &sub.DlgProc 0)) ret


#sub DlgProc
function# hDlg message wParam lParam

sel message
,case WM_INITDIALOG
,int+ g_hwndStaticOut=id(3 hDlg)
,RedirectQmOutput &OutRedirectCallback
,
,mac "sub.Thread"
,case WM_DESTROY
,case WM_COMMAND goto messages2
ret
;messages2
sel wParam
,case IDOK
,case IDCANCEL
ret 1


#sub Thread
int i
for i 0 5
,0.5
,out i
 

Function OutRedirectCallback
Code:
Copy      Help
;/
function# str&s reserved

int+ g_hwndStaticOut
s.setwintext(g_hwndStaticOut)
ret 1
#3
If the dialog is used only to show exe output text, instead use function ExeOutputWindow. Then don't need a dialog with a static control.

Macro Macro247
Code:
Copy      Help
;/exe

ExeOutputWindow

int i
for i 0 5
,0.5
,out i
#4
ExeOutputWindow does the trick!
Will try macro203 also...

Quick Macro is a wonderful software, and your support is first class!

Many thanks Gintaras, you are great.


Forum Jump:


Users browsing this thread: 1 Guest(s)