Frame

Category: Controls - .Basic Examples

Date: 02-16-2022

Return to Index


 
'An online Frame control tutorial may be found at:
'http://www.garybeene.com/power/pb-tutor-controls.htm
 
'Primary Code:
'Syntax:   Control Add Frame, hDlg, id&, txt$, x, y, xx, yy [, [style&] [, [exstyle&]]]
Control Add Frame, hDlg, 100, "Frame Example", 20,20,150,90, %BS_Left
 
'While the frame control often used to enclose controls within a group (such as Option controls)
'by placing the controls on top of the frame control. It provides a visual grouping of controls. It
'does NOT act as a parent of such controls. For example, moving the frame control does NOT
'automatically move controls placed on top of it
 
'Compilable Example:  (Jose Includes)
'The following compilable code demonstrates a dialog with a single frame control.
'The frame does not send messages to its parent dialog and does not require or
'support a Callback. The Callback included here is to support button clicks from
'the one button on the dialog, not the frame control.
#Compiler PBWin 9, PBWin 10
#Compile EXE
#Dim All
%Unicode=1
Global hDlg As Dword
 
Function PBMain() As Long
   Dialog New Pixels, 0, "Frame Test",300,300,300,300, %WS_SysMenu, 0 To hDlg
   Control Add Button, hDlg, 100, "Push to move Frame", 20,10,150,20
   Control Add Frame, hDlg, 200, "Frame Example", 20,40,150,150, %BS_Left
   Control Add Label, hDlg, 300, "Label1", 40,70,50,20, %BS_Left Or %WS_Border
   Control Add Label, hDlg, 400, "Label2", 40,110,50,20, %BS_Left Or %WS_Border
   Dialog Show Modal hDlg Call DlgProc
End Function
 
CallBack Function DlgProc() As Long
   If CB.Msg = %WM_Command AND CB.Ctl = 100 AND CB.Ctlmsg = %BN_Clicked Then
      Control Set Loc hDlg, 200, 100, 80
      Dialog Redraw hDlg
      MsgBox "Frame moved. Notice that the labels did not move?"
   End If
End Function
 
'gbs_00088
'Date: 03-10-2012


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