Date: 02-16-2022
Return to Index
created by gbSnippets
'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
%Unicode=1
#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
http://www.garybeene.com/sw/gbsnippets.htm