22
|
How can I play animated GIF using the control
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oNETHost
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oNETHost := XbpActiveXControl():new( oForm:drawingArea )
oNETHost:CLSID := "Exontrol.NETHost" /*{FDCBA3E0-4E2F-4DC7-B073-EAA7BD7EC565}*/
oNETHost:create(,, {10,60},{610,370} )
oNETHost:Create("C:\Windows\assembly\GAC_MSIL\System.Windows.Forms\2.0.0.0__b77a5c561934e089\System.Windows.Forms.dll","System.Windows.Forms.Label")
oNETHost:Host():Template := "Image = LoadPicture(`C:\Program Files (x86)\Exontrol\ExNETHost\Sample\wait.gif`)"
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
21
|
How can I use the Template property
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oNETHost
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oNETHost := XbpActiveXControl():new( oForm:drawingArea )
oNETHost:CLSID := "Exontrol.NETHost" /*{FDCBA3E0-4E2F-4DC7-B073-EAA7BD7EC565}*/
oNETHost:create(,, {10,60},{610,370} )
oNETHost:AssemblyLocation := "C:\Windows\assembly\GAC_MSIL\System.Windows.Forms\2.0.0.0__b77a5c561934e089\System.Windows.Forms.dll"
oNETHost:AssemblyName := "System.Windows.Forms.TreeView"
oNETHost:Host():Template := "Nodes { Add(`Root 1`).Nodes { Add(`Child 1`); Add(`Child 2`) } }"
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
20
|
How can I use the TemplateResult property (method 2)
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oNETHostObject
LOCAL oNETHost
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oNETHost := XbpActiveXControl():new( oForm:drawingArea )
oNETHost:CLSID := "Exontrol.NETHost" /*{FDCBA3E0-4E2F-4DC7-B073-EAA7BD7EC565}*/
oNETHost:create(,, {10,60},{610,370} )
oNETHost:AssemblyLocation := "C:\Windows\assembly\GAC_MSIL\System.Windows.Forms\2.0.0.0__b77a5c561934e089\System.Windows.Forms.dll"
oNETHost:AssemblyName := "System.Windows.Forms.TreeView"
oNETHostObject := oNETHost:Host()
oNETHostObject:Template := "Nodes.Add(`Root 1`){ BackColor = RGB(255,0,0);ForeColor = RGB(255,255,255) }"
oNETHostObject:TemplateResult():Template := "Nodes{ Add(`Child 1`); Add(`Child 2`) }; Expand() }"
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
19
|
How can I use the TemplateResult property (method 1)
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oNETHostObject
LOCAL oNETHostObject1
LOCAL oNETHost
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oNETHost := XbpActiveXControl():new( oForm:drawingArea )
oNETHost:CLSID := "Exontrol.NETHost" /*{FDCBA3E0-4E2F-4DC7-B073-EAA7BD7EC565}*/
oNETHost:create(,, {10,60},{610,370} )
oNETHost:AssemblyLocation := "C:\Windows\assembly\GAC_MSIL\System.Windows.Forms\2.0.0.0__b77a5c561934e089\System.Windows.Forms.dll"
oNETHost:AssemblyName := "System.Windows.Forms.TreeView"
oNETHostObject := oNETHost:Host()
oNETHostObject:Template := "Nodes.Add(`Root 1`)"
oNETHostObject1 := oNETHostObject:TemplateResult()
oNETHostObject1:Template := "Nodes.Add(`Child 1`)"
oNETHostObject1:Template := "Nodes.Add(`Child 2`)"
oNETHostObject1:Template := "Expand()"
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
18
|
How can I find the information about the hosting control, like name, version, ...
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oNETHostObject
LOCAL oNETHost
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oNETHost := XbpActiveXControl():new( oForm:drawingArea )
oNETHost:CLSID := "Exontrol.NETHost" /*{FDCBA3E0-4E2F-4DC7-B073-EAA7BD7EC565}*/
oNETHost:create(,, {10,60},{610,370} )
oNETHost:AssemblyQualifiedName := "System.Windows.Forms.ListBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
oNETHostObject := oNETHost:Host()
DevOut( Transform(oNETHostObject:Item("ProductName"):Value(),"") )
DevOut( Transform(oNETHostObject:Item("ProductVersion"):Value(),"") )
DevOut( Transform(oNETHostObject:Item("CompanyName"):Value(),"") )
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
17
|
How do I get the hwnd/handle of the hosting control
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oNETHost
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oNETHost := XbpActiveXControl():new( oForm:drawingArea )
oNETHost:CLSID := "Exontrol.NETHost" /*{FDCBA3E0-4E2F-4DC7-B073-EAA7BD7EC565}*/
oNETHost:create(,, {10,60},{610,370} )
oNETHost:AssemblyLocation := "C:\Windows\assembly\GAC_MSIL\System.Windows.Forms\2.0.0.0__b77a5c561934e089\System.Windows.Forms.dll"
DevOut( Transform(oNETHost:Host:Item("Handle"):AsInt(),"") )
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
16
|
How do I get the number of arguments that an event has
PROCEDURE OnHostEvent(oNETHost,Ev)
DevOut( "Ev.Arguments.Item(" + CHR(34) + "GetType().GetProperties().Length" + CHR(34) + ").AsString" )
DevOut( Transform(Ev,"") )
RETURN
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oNETHost
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oNETHost := XbpActiveXControl():new( oForm:drawingArea )
oNETHost:CLSID := "Exontrol.NETHost" /*{FDCBA3E0-4E2F-4DC7-B073-EAA7BD7EC565}*/
oNETHost:create(,, {10,60},{610,370} )
oNETHost:HostEvent := {|Ev| OnHostEvent(oNETHost,Ev)} /*The hosting control fires an event.*/
oNETHost:AssemblyLocation := "C:\Windows\assembly\GAC_MSIL\System.Windows.Forms\2.0.0.0__b77a5c561934e089\System.Windows.Forms.dll"
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
15
|
How can I change the control's background color, as BackgroundColor seems to have no effect
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oNETHostObject
LOCAL oNETHostObject1,var_NETHostObject,var_NETHostObject1
LOCAL oNETHost
LOCAL var_Object
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oNETHost := XbpActiveXControl():new( oForm:drawingArea )
oNETHost:CLSID := "Exontrol.NETHost" /*{FDCBA3E0-4E2F-4DC7-B073-EAA7BD7EC565}*/
oNETHost:create(,, {10,60},{610,370} )
oNETHost:AssemblyLocation := "C:\Windows\assembly\GAC_MSIL\System.Windows.Forms\2.0.0.0__b77a5c561934e089\System.Windows.Forms.dll"
oNETHost:AssemblyName := "System.Windows.Forms.TreeView"
oNETHostObject := oNETHost:Host()
oNETHostObject:Template := "BackColor = RGB(240,240,240)"
oNETHostObject1 := oNETHostObject:Item("Nodes.Add(`Root`)")
var_NETHostObject := oNETHostObject1:Item("Nodes.Add(`Child 1`)")
var_NETHostObject1 := oNETHostObject1:Item("Nodes.Add(`Child 2`)")
var_Object := oNETHostObject1:Item("Expand()")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
14
|
How can I add a TreeView
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oNETHostObject
LOCAL oNETHostObject1,oNETHostObject2,oNETHostObject3,var_NETHostObject,var_NETHostObject1,var_NETHostObject2,var_NETHostObject3,var_NETHostObject4,var_NETHostObject5,var_NETHostObject6,var_NETHostObject7
LOCAL oNETHost
LOCAL var_Object,var_Object1
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oNETHost := XbpActiveXControl():new( oForm:drawingArea )
oNETHost:CLSID := "Exontrol.NETHost" /*{FDCBA3E0-4E2F-4DC7-B073-EAA7BD7EC565}*/
oNETHost:create(,, {10,60},{610,370} )
oNETHost:AssemblyLocation := "C:\Windows\assembly\GAC_MSIL\System.Windows.Forms\2.0.0.0__b77a5c561934e089\System.Windows.Forms.dll"
oNETHost:AssemblyName := "System.Windows.Forms.TreeView"
oNETHostObject := oNETHost:Host()
oNETHostObject1 := oNETHostObject:Item("Nodes.Add(`Root 1`)")
var_NETHostObject := oNETHostObject1:Item("Nodes.Add(`Child 1`)")
oNETHostObject2 := oNETHostObject1:Item("Nodes.Add(`Child 2`)")
var_NETHostObject1 := oNETHostObject2:Item("Nodes.Add(`Sub-Child 2.1`)")
var_NETHostObject2 := oNETHostObject2:Item("Nodes.Add(`Sub-Child 2.2`)")
var_NETHostObject3 := oNETHostObject2:Item("Nodes.Add(`Sub-Child 2.3`)")
var_Object := oNETHostObject2:Item("Expand()")
var_NETHostObject4 := oNETHostObject1:Item("Nodes.Add(`Child 3`)")
var_Object1 := oNETHostObject1:Item("Expand()")
oNETHostObject3 := oNETHostObject:Item("Nodes.Add(`Root 2`)")
var_NETHostObject5 := oNETHostObject3:Item("Nodes.Add(`Child 1`)")
var_NETHostObject6 := oNETHostObject3:Item("Nodes.Add(`Child 2`)")
var_NETHostObject7 := oNETHostObject3:Item("Nodes.Add(`Child 3`)")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
13
|
How can I add a ProgressBar
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oNETHostObject
LOCAL oNETHost
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oNETHost := XbpActiveXControl():new( oForm:drawingArea )
oNETHost:CLSID := "Exontrol.NETHost" /*{FDCBA3E0-4E2F-4DC7-B073-EAA7BD7EC565}*/
oNETHost:create(,, {10,60},{610,370} )
oNETHost:AssemblyLocation := "C:\Windows\assembly\GAC_MSIL\System.Windows.Forms\2.0.0.0__b77a5c561934e089\System.Windows.Forms.dll"
oNETHost:AssemblyName := "System.Windows.Forms.ProgressBar"
oNETHostObject := oNETHost:Host()
oNETHostObject:SetTemplateDef("Dim percent")
oNETHostObject:SetTemplateDef(50)
oNETHostObject:Template := "Value = percent"
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
12
|
How can I add a DateTimePicker
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oNETHostObject
LOCAL oNETHost
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oNETHost := XbpActiveXControl():new( oForm:drawingArea )
oNETHost:CLSID := "Exontrol.NETHost" /*{FDCBA3E0-4E2F-4DC7-B073-EAA7BD7EC565}*/
oNETHost:create(,, {10,60},{610,370} )
oNETHost:AssemblyLocation := "C:\Windows\assembly\GAC_MSIL\System.Windows.Forms\2.0.0.0__b77a5c561934e089\System.Windows.Forms.dll"
oNETHost:AssemblyName := "System.Windows.Forms.DateTimePicker"
oNETHostObject := oNETHost:Host()
oNETHostObject:SetTemplateDef("Dim date")
oNETHostObject:SetTemplateDef("01/01/2001")
oNETHostObject:Template := "Value = date"
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
11
|
How can I add CheckedListBox
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oNETHostObject
LOCAL oNETHost
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oNETHost := XbpActiveXControl():new( oForm:drawingArea )
oNETHost:CLSID := "Exontrol.NETHost" /*{FDCBA3E0-4E2F-4DC7-B073-EAA7BD7EC565}*/
oNETHost:create(,, {10,60},{610,370} )
oNETHost:AssemblyLocation := "C:\Windows\assembly\GAC_MSIL\System.Windows.Forms\2.0.0.0__b77a5c561934e089\System.Windows.Forms.dll"
oNETHost:AssemblyName := "System.Windows.Forms.CheckedListBox"
oNETHostObject := oNETHost:Host()
oNETHostObject:Template := "FormattingEnabled = True"
oNETHostObject:Template := "Items.Add(`Check 1`)"
oNETHostObject:Template := "Items.Add(`Check 2`,True)"
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
10
|
How can I specify the list of events to be handled
PROCEDURE OnHostEvent(oNETHost,Ev)
DevOut( Transform(Ev,"") )
DevOut( "Button " )
DevOut( Transform(Ev,"") )
RETURN
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oNETHost
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oNETHost := XbpActiveXControl():new( oForm:drawingArea )
oNETHost:CLSID := "Exontrol.NETHost" /*{FDCBA3E0-4E2F-4DC7-B073-EAA7BD7EC565}*/
oNETHost:create(,, {10,60},{610,370} )
oNETHost:HostEvent := {|Ev| OnHostEvent(oNETHost,Ev)} /*The hosting control fires an event.*/
oNETHost:BackgroundColor := 16777215
oNETHost:HostEvents := "MouseUp MouseDown"
oNETHost:Create("C:\Windows\assembly\GAC_MSIL\System.Windows.Forms\2.0.0.0__b77a5c561934e089\System.Windows.Forms.dll","System.Windows.Forms.MonthCalendar")
oNETHost:Host():Template := "MaxSelectionCount = 1"
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
9
|
Is it possible to handle only a specific event
PROCEDURE OnHostEvent(oNETHost,Ev)
DevOut( Transform(Ev,"") )
RETURN
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oNETHostObject
LOCAL oNETHost
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oNETHost := XbpActiveXControl():new( oForm:drawingArea )
oNETHost:CLSID := "Exontrol.NETHost" /*{FDCBA3E0-4E2F-4DC7-B073-EAA7BD7EC565}*/
oNETHost:create(,, {10,60},{610,370} )
oNETHost:HostEvent := {|Ev| OnHostEvent(oNETHost,Ev)} /*The hosting control fires an event.*/
oNETHost:BackgroundColor := 16777215
oNETHost:Create("C:\Windows\assembly\GAC_MSIL\System.Windows.Forms\2.0.0.0__b77a5c561934e089\System.Windows.Forms.dll","System.Windows.Forms.MonthCalendar")
oNETHost:HostEvents := "DateSelected"
oNETHostObject := oNETHost:Host()
oNETHostObject:Template := "MaxSelectionCount = 1"
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
8
|
How can I handle events withing the control
PROCEDURE OnHostEvent(oNETHost,Ev)
DevOut( Transform(Ev,"") )
RETURN
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oNETHostObject
LOCAL oNETHost
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oNETHost := XbpActiveXControl():new( oForm:drawingArea )
oNETHost:CLSID := "Exontrol.NETHost" /*{FDCBA3E0-4E2F-4DC7-B073-EAA7BD7EC565}*/
oNETHost:create(,, {10,60},{610,370} )
oNETHost:HostEvent := {|Ev| OnHostEvent(oNETHost,Ev)} /*The hosting control fires an event.*/
oNETHost:BackgroundColor := 16777215
oNETHost:Create("C:\Windows\assembly\GAC_MSIL\System.Windows.Forms\2.0.0.0__b77a5c561934e089\System.Windows.Forms.dll","System.Windows.Forms.MonthCalendar")
oNETHostObject := oNETHost:Host()
oNETHostObject:Template := "MaxSelectionCount = 1"
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
7
|
How can I add the Tab page, and pages inside (method 2)
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oNETHostObject
LOCAL oNETHostObject1,oNETHostObject2
LOCAL oNETHost
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oNETHost := XbpActiveXControl():new( oForm:drawingArea )
oNETHost:CLSID := "Exontrol.NETHost" /*{FDCBA3E0-4E2F-4DC7-B073-EAA7BD7EC565}*/
oNETHost:create(,, {10,60},{610,370} )
oNETHost:AssemblyLocation := "C:\Windows\assembly\GAC_MSIL\System.Windows.Forms\2.0.0.0__b77a5c561934e089\System.Windows.Forms.dll"
oNETHost:AssemblyName := "System.Windows.Forms.TabControl"
oNETHostObject := oNETHost:Host()
oNETHostObject1 := oNETHostObject:Item("Dim page; page = CreateObject(`System.Windows.Forms.TabPage, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089`){Text = `new`};Controls.Add(page);page")
oNETHostObject1:Template := "Text = `Page 1`;UseVisualStyleBackColor = True"
oNETHostObject1:Template := "Dim c; c = CreateObject(`System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089`){Text=`Button 2`;Dock=1}; Controls.Add(c)"
oNETHostObject1:Template := "Dim c; c = CreateObject(`System.Windows.Forms.Button, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089`){Text=`Button 1`;Dock=1}; Controls.Add(c)"
oNETHostObject2 := oNETHostObject:Item("Dim page; page = CreateObject(`System.Windows.Forms.TabPage, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089`){Text = `new`};Controls.Add(page);page")
oNETHostObject2:Template := "Text = `Page 1`;UseVisualStyleBackColor = True"
oNETHostObject2:Template := "Dim c; c = CreateObject(`System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089`){Text=`Edit 2`;Dock=1}; Controls.Add(c)"
oNETHostObject2:Template := "Dim c; c = CreateObject(`System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089`){Text=`Edit 1`;Dock=1}; Controls.Add(c)"
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
6
|
How can I add the Tab page, and pages inside (method 1)
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oNETHostObject
LOCAL oNETHostObject1,oNETHostObject2
LOCAL oNETHost
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oNETHost := XbpActiveXControl():new( oForm:drawingArea )
oNETHost:CLSID := "Exontrol.NETHost" /*{FDCBA3E0-4E2F-4DC7-B073-EAA7BD7EC565}*/
oNETHost:create(,, {10,60},{610,370} )
oNETHost:AssemblyLocation := "C:\Windows\assembly\GAC_MSIL\System.Windows.Forms\2.0.0.0__b77a5c561934e089\System.Windows.Forms.dll"
oNETHost:AssemblyName := "System.Windows.Forms.TabControl"
oNETHostObject := oNETHost:Host()
oNETHostObject1 := oNETHostObject:Item("CreateObject(`System.Windows.Forms.TabPage, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089`)")
oNETHostObject1:Template := "Text = `Page 1`;UseVisualStyleBackColor = True"
oNETHostObject:SetTemplateDef("Dim page")
oNETHostObject:SetTemplateDef(oNETHostObject:TemplateResult:Value())
oNETHostObject:Template := "Controls.Add(page)"
oNETHostObject2 := oNETHostObject:Item("CreateObject(`System.Windows.Forms.TabPage, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089`)")
oNETHostObject2:Template := "Text = `Page 2`;UseVisualStyleBackColor = True"
oNETHostObject:SetTemplateDef("Dim page")
oNETHostObject:SetTemplateDef(oNETHostObject:TemplateResult:Value())
oNETHostObject:Template := "Controls.Add(page)"
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
5
|
Just wondering if I can host your /NET control
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oNETHostObject
LOCAL oNETHost
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oNETHost := XbpActiveXControl():new( oForm:drawingArea )
oNETHost:CLSID := "Exontrol.NETHost" /*{FDCBA3E0-4E2F-4DC7-B073-EAA7BD7EC565}*/
oNETHost:create(,, {10,60},{610,370} )
oNETHost:AssemblyLocation := "C:\Program Files\Exontrol\ExG2antt.NET\Sample\exontrol.exg2antt.dll"
oNETHostObject := oNETHost:Host()
oNETHostObject:Template := "LoadXML(`http://www.exontrol.net/testing.xml`)"
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
4
|
How can I insert the MonthCalendar of /NET framework
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oNETHostObject
LOCAL oNETHost
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oNETHost := XbpActiveXControl():new( oForm:drawingArea )
oNETHost:CLSID := "Exontrol.NETHost" /*{FDCBA3E0-4E2F-4DC7-B073-EAA7BD7EC565}*/
oNETHost:create(,, {10,60},{610,370} )
oNETHost:BackgroundColor := 16777215
oNETHost:Create("C:\Windows\assembly\GAC_MSIL\System.Windows.Forms\2.0.0.0__b77a5c561934e089\System.Windows.Forms.dll","System.Windows.Forms.MonthCalendar")
oNETHostObject := oNETHost:Host()
oNETHostObject:SetTemplateDef("Dim x")
oNETHostObject:SetTemplateDef("01/01/2001")
oNETHostObject:Template := "MaxSelectionCount = 1;SelectionStart = x"
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
3
|
How can I use the AssemblyQualifiedName property
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oNETHostObject
LOCAL oNETHost
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oNETHost := XbpActiveXControl():new( oForm:drawingArea )
oNETHost:CLSID := "Exontrol.NETHost" /*{FDCBA3E0-4E2F-4DC7-B073-EAA7BD7EC565}*/
oNETHost:create(,, {10,60},{610,370} )
oNETHost:AssemblyQualifiedName := "System.Windows.Forms.ListBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
oNETHostObject := oNETHost:Host():Item("Items")
oNETHostObject:Template := "Add(2001)"
oNETHostObject:Template := "Add(4.1234)"
oNETHostObject:Template := "Add(#1/1/2001#)"
oNETHostObject:Template := "Add(RGB(255,0,0))"
oNETHostObject:Template := "Add(1);Add(2);Add(3)"
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
2
|
How can I use the AssemblyLocation property
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oNETHostObject
LOCAL oNETHostObject1
LOCAL oNETHost
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oNETHost := XbpActiveXControl():new( oForm:drawingArea )
oNETHost:CLSID := "Exontrol.NETHost" /*{FDCBA3E0-4E2F-4DC7-B073-EAA7BD7EC565}*/
oNETHost:create(,, {10,60},{610,370} )
oNETHost:AssemblyLocation := "C:\Windows\assembly\GAC_MSIL\System.Windows.Forms\2.0.0.0__b77a5c561934e089\System.Windows.Forms.dll"
oNETHost:AssemblyName := "System.Windows.Forms.ListView"
oNETHostObject := oNETHost:Host()
oNETHostObject:Template := "Items.Add(`first`)"
oNETHostObject1 := oNETHostObject:Item("CreateObject(`System.Windows.Forms.ListViewItem, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089`)")
oNETHostObject1:Template := "Text = `second`;ForeColor = RGB(255,0,0)"
oNETHostObject:SetTemplateDef("Dim n")
oNETHostObject:SetTemplateDef(oNETHostObject:TemplateResult:Value())
oNETHostObject:Template := "Items.Add(n)"
oNETHostObject:Template := "Items.Add(`third`)"
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
1
|
How can I insert the PropertyGrid of /NET framework
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oNETHostObject
LOCAL oNETHost
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oNETHost := XbpActiveXControl():new( oForm:drawingArea )
oNETHost:CLSID := "Exontrol.NETHost" /*{FDCBA3E0-4E2F-4DC7-B073-EAA7BD7EC565}*/
oNETHost:create(,, {10,60},{610,370} )
oNETHost:AssemblyQualifiedName := "System.Windows.Forms.PropertyGrid, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
oNETHostObject := oNETHost:Host()
oNETHostObject:Template := "BackColor = RGB(255,255,255);ViewBackColor = RGB(255,255,255);LineColor = ViewBackColor"
oNETHostObject:SetTemplateDef("dim object")
oNETHostObject:SetTemplateDef(oNETHost)
oNETHostObject:Template := "SelectedObject = object"
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|