.Dialog + DoEvents Loop

Category: Templates (IDE)

Date: 03-28-2012

Return to Index


 
'An online tutorial on templates can be found at:
'http://www.garybeene.com/power/pb-tutor-templates.htm
 
'Use this template by copying everything below "'Copy below here:"
'and put in a file with a ".pbtpl" extension under pbwin90\bin.
'When PB IDE starts, the template will be available under the
'toolbar "Create New File" dropdown menu.
 
'Copy below here:
1
.bas
Standard: Dialog + Doevents Loop
#Compile EXE
#Dim All
 
#Debug Error On     'catch array/pointer errors - OFF in production
#Debug Display On   'display untrapped errors   - OFF in production
#Tools Off          'use ON only when needed for Trace/Profile/CallStk
 
#Include "win32api.inc"
 
'use these inside procedures:
'#Debug Print "msg"  'on as-needed basis only
'#Debug Code ON      'ignored in production, use OFF for speed in development testing
 
Function PBMain() As Long
   Local hDlg As Dword, Count&
   MakeDialog(hDlg)
   Do
      Dialog Doevents 0 To Count&
      MySub hDlg
   Loop While Count&
End Function
 
Sub MakeDialog(hDlg as Dword)
   Dialog New Pixels, 0, "Test",300,300,200,200, %WS_OverlappedWindow To hDlg
   Control Add Label, hDlg, 100,"results", 50,50,100,20, %WS_Border
   Control Add Label, hDlg, 101,"results", 50,80,100,20, %WS_Border
   Dialog Show Modeless hDlg Call DlgProc
End Sub
 
CallBack Function DlgProc() As Long
    'Console message list
    Static iMsgCount&
    CPrint Str$(iMsgCount&)+ " " + WinMsg(CB.Msg)
    Incr iMsgCount&
 
End Function
 
Sub MySub (hDlg as Dword)
   Local iResult1&, iResult2&
   '... test code here - place results in labels 100 & 101
   Control Set Text hDlg, 100, Str$(iResult1&)
   Control Set Text hDlg, 101, Str$(iResult2&)
End Sub
 
Sub CPrint (SOut As String)    'Semen Matusovski's CPrint code:
    Static hConsole As Long, cWritten As Long
    If hConsole = 0 Then AllocConsole: hConsole = GetStdHandle(-11&)
    WriteConsole hConsole, ByCopy sOut + $CrLf, Len(sOut) + 2, cWritten, ByVal 0&
End Sub
 
'gbs_00251
'Date: 03-10-2012


created by gbSnippets
http://www.garybeene.com/sw/gbsnippets.htm