ActiveX Controls auch für Xbase++ (+Beispiele)

Nutzung, Komponenten, .NET

Moderator: Moderatoren

Benutzeravatar
satmax
1000 working lines a day
1000 working lines a day
Beiträge: 831
Registriert: Do, 02. Dez 2010 19:34
Wohnort: Biberbach in Österreich
Hat sich bedankt: 1 Mal
Danksagung erhalten: 1 Mal
Kontaktdaten:

ActiveX Controls auch für Xbase++ (+Beispiele)

Beitrag von satmax »

Ich habe heute ActiveX Controls gefunden, wo sogar Hilfebeispiele für Xbase++ enthalten sind. Es gibt da jede Menge verschiedener Controls. Mir angetan hat es das Grid-Gantt Control. Demo gibt es Gratis, auch ein Helper Programm wird installiert wo man sich einiges zusammenklicken kann, auch für Xbase++
Dateianhänge
exg2antt.JPG
exg2antt.JPG (208.06 KiB) 21624 mal betrachtet
Gruß
Markus
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: ActiveX Controls auch für Xbase++ (+Beispiele)

Beitrag von AUGE_OHR »

satmax hat geschrieben:Ich habe heute ActiveX Controls gefunden, wo sogar Hilfebeispiele für Xbase++ enthalten sind.
WOW ... das ist aber selten :!:

interessant auch das kein o:subscribeEvent() verwendet wird sondern direkt auf den o:MouseMove Event zugegriffen wird.
gruss by OHR
Jimmy
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15688
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: ActiveX Controls auch für Xbase++ (+Beispiele)

Beitrag von brandelh »

sieht gut aus, hast du auch einen LINK ? ;-)
Gruß
Hubert
Benutzeravatar
satmax
1000 working lines a day
1000 working lines a day
Beiträge: 831
Registriert: Do, 02. Dez 2010 19:34
Wohnort: Biberbach in Österreich
Hat sich bedankt: 1 Mal
Danksagung erhalten: 1 Mal
Kontaktdaten:

Re: ActiveX Controls auch für Xbase++ (+Beispiele)

Beitrag von satmax »

brandelh hat geschrieben:sieht gut aus, hast du auch einen LINK ? ;-)
Dem kann geholfen werden: http://exontrol.com/index.jsp :D
Gruß
Markus
Benutzeravatar
Wolfgang Ciriack
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2932
Registriert: Sa, 24. Sep 2005 9:37
Wohnort: Berlin
Hat sich bedankt: 13 Mal
Danksagung erhalten: 34 Mal
Kontaktdaten:

Re: ActiveX Controls auch für Xbase++ (+Beispiele)

Beitrag von Wolfgang Ciriack »

Sehr erstaunlich, dass man mal Beispielcode in XBase++ findet =D>
Viele Grüße
Wolfgang
Benutzeravatar
satmax
1000 working lines a day
1000 working lines a day
Beiträge: 831
Registriert: Do, 02. Dez 2010 19:34
Wohnort: Biberbach in Österreich
Hat sich bedankt: 1 Mal
Danksagung erhalten: 1 Mal
Kontaktdaten:

Re: ActiveX Controls auch für Xbase++ (+Beispiele)

Beitrag von satmax »

Wolfgang Ciriack hat geschrieben:Sehr erstaunlich, dass man mal Beispielcode in XBase++ findet =D>
Umso mehr hat es mich überrascht hier im Forum noch nichts darüber gelesen zu haben...

Möglicherweise gibt es sie ja doch, die große XUGG, also Xbase++ UnderGroundGroup. :lol: :lol:
Gruß
Markus
Benutzeravatar
Rudolf
Programmier-Gott
Programmier-Gott
Beiträge: 1418
Registriert: Mo, 02. Jan 2006 23:03
Wohnort: Salzburg/Österreich
Kontaktdaten:

Re: ActiveX Controls auch für Xbase++ (+Beispiele)

Beitrag von Rudolf »

Hallo,
also mich würde das Grid Control sehr interessieren, sollten noch andere das Tool verwenden, wären Beispiele interessant.
Grüße
Rudolf
Benutzeravatar
satmax
1000 working lines a day
1000 working lines a day
Beiträge: 831
Registriert: Do, 02. Dez 2010 19:34
Wohnort: Biberbach in Österreich
Hat sich bedankt: 1 Mal
Danksagung erhalten: 1 Mal
Kontaktdaten:

Re: ActiveX Controls auch für Xbase++ (+Beispiele)

Beitrag von satmax »

Hallo Rudolf,

das Grid habe ich mir noch nicht angesehen, das Gantt Modul sieht aber sehr vielversprechend aus. Lade Dir einfach das Grid Control runter. Mit dem ExHelper Tool kannst Du dir ganz einfach für viele Beispiele den Xbase++ Code generieren und damit sehr schnell experimentieren:

Code: Alles auswählen

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oGrid
	LOCAL oColumn,oColumn1
	LOCAL oColumns

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oGrid := XbpActiveXControl():new( oForm:drawingArea )
	oGrid:CLSID  := "Exontrol.Grid.1" /*{101EE60F-7B07-48B0-A13A-F32BAE7DA165}*/
	oGrid:create(,, {10,60},{610,370} )

		oGrid:BeginUpdate()
		oGrid:DrawGridLines := -1/*exAllLines*/
		oGrid:SetProperty("BackColorLevelHeader",AutomationTranslateColor( GraMakeRGBColor  ( { 240,240,240 } )  , .F. ))
		oColumns := oGrid:Columns()
			oColumn := oColumns:Add("Photo")
				oColumn:AllowSizing := .F.
				oColumn:Width := 32
			oColumns:Add("Personal Info")
			oColumns:Add("Title")
			oColumns:Add("Name")
			oColumns:Add("First")
			oColumns:Add("Last")
			oColumns:Add("Address")
			oColumn1 := oColumns:Item("Name")
		oGrid:EndUpdate()

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
Gruß
Markus
Benutzeravatar
Rudolf
Programmier-Gott
Programmier-Gott
Beiträge: 1418
Registriert: Mo, 02. Jan 2006 23:03
Wohnort: Salzburg/Österreich
Kontaktdaten:

Re: ActiveX Controls auch für Xbase++ (+Beispiele)

Beitrag von Rudolf »

Hallo Markus,
danke fürs Beispiel, schaut relativ einfach aus, werde das Grid mal testen ob es für mich passt.
Grüße
Rudolf
UliTs
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2828
Registriert: Fr, 10. Feb 2006 9:51
Wohnort: Aachen
Hat sich bedankt: 259 Mal
Danksagung erhalten: 12 Mal
Kontaktdaten:

Re: ActiveX Controls auch für Xbase++ (+Beispiele)

Beitrag von UliTs »

Rudolf hat geschrieben:Hallo Markus,
danke fürs Beispiel, schaut relativ einfach aus, werde das Grid mal testen ob es für mich passt.
Grüße
Rudolf
Gibt es schon Erfahrungswerte?

Uli
-------
Mitglied XuG Cologne
Mitglied XuG Osnabrück
Benutzeravatar
Rudolf
Programmier-Gott
Programmier-Gott
Beiträge: 1418
Registriert: Mo, 02. Jan 2006 23:03
Wohnort: Salzburg/Österreich
Kontaktdaten:

Re: ActiveX Controls auch für Xbase++ (+Beispiele)

Beitrag von Rudolf »

Hallo,
also mir fehlt noch die Zuordnung zu einer DBF, ich muss in der Datenbank wie mit dem Xbase browser navigieren können, auch wenn es sehr viele Datensätze sind.
Grüße
Rudolf
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: ActiveX Controls auch für Xbase++ (+Beispiele)

Beitrag von AUGE_OHR »

Rudolf hat geschrieben:also mir fehlt noch die Zuordnung zu einer DBF, ich muss in der Datenbank wie mit dem Xbase browser navigieren können, auch wenn es sehr viele Datensätze sind.
das ist ja nun auch der Part den "du" schreiben musst.
aber, ähnlich wie bei SQL, sollte man das Listen-Control nicht "mit allen Datensätzen" befüllen sondern nur so viel wie man "sehen" kann.
du musst dir also eine eigene Class schreiben für deinen "Skipper" und das o:Keyboard überlagern mit deinen neuen Method(en) die du für so eine (schnelle) Anzeige benötigst.

p.s. das ganze Control sieht mir aus wie ein ListView.
gruss by OHR
Jimmy
Benutzeravatar
Rudolf
Programmier-Gott
Programmier-Gott
Beiträge: 1418
Registriert: Mo, 02. Jan 2006 23:03
Wohnort: Salzburg/Österreich
Kontaktdaten:

Re: ActiveX Controls auch für Xbase++ (+Beispiele)

Beitrag von Rudolf »

Hallo Jimmy,
genau so eine Klasse suche ich seit Jahren. Habe selbst mal begonnen für SQL eine zu schreiben, war aber zu langsam und kompliziert. Ich befürchte auch dass das neue XBase++ mit SQL für mich nicht verwendbar wird, da ich in den meisten Dialogen eine inkrementelle Suche für die Tabelle habe und das sicher mit vielen Datensätzen nicht gehen wird. Steffen hat zwar mal geschrieben dass sie das Problem gelöst haben, aber ich glaube es nicht wirklich.
Das Control wird leider dann für mich auch nicht verwandbar sein.
Grüße
Rudolf
Benutzeravatar
satmax
1000 working lines a day
1000 working lines a day
Beiträge: 831
Registriert: Do, 02. Dez 2010 19:34
Wohnort: Biberbach in Österreich
Hat sich bedankt: 1 Mal
Danksagung erhalten: 1 Mal
Kontaktdaten:

Re: ActiveX Controls auch für Xbase++ (+Beispiele)

Beitrag von satmax »

SQL und inkrementelle Suche funktioniert mit TopDown, habe ich im Einsatz. Das mit dem ActiveX Control sollte ähnlich gehen, habe ich mir aber noch nicht angesehen und wird so schnell wohl auch nichts.
Gruß
Markus
Benutzeravatar
Rudolf
Programmier-Gott
Programmier-Gott
Beiträge: 1418
Registriert: Mo, 02. Jan 2006 23:03
Wohnort: Salzburg/Österreich
Kontaktdaten:

Re: ActiveX Controls auch für Xbase++ (+Beispiele)

Beitrag von Rudolf »

Hallo, dann werde ich mir Topdown nochmal genauer anschauen, habe eine Lizenz aber verwende lieber eXpress++

Grüße
Rudolf
Benutzeravatar
satmax
1000 working lines a day
1000 working lines a day
Beiträge: 831
Registriert: Do, 02. Dez 2010 19:34
Wohnort: Biberbach in Österreich
Hat sich bedankt: 1 Mal
Danksagung erhalten: 1 Mal
Kontaktdaten:

Re: ActiveX Controls auch für Xbase++ (+Beispiele)

Beitrag von satmax »

Speziell bei TD <-> SQLExpress hat sich was getan. Ich hatte da vor ca. einem 1/2 Jahr viel Kontakt mit Clayton und er hat einiges angepasst bzw. übernommen, unter anderem auch SqlISearch.

Grob funktioniert das nun so:

Code: Alles auswählen

 oCursor:cargo:=Array(3)   // for Table, Searchfield and addional where....

               oCursor:cargo[1]:= "Mitarbeiter"       // Table
               oCursor:cargo[2]:= "Name1"             // Searchfield
               oCursor:cargo[3]:= " AND MitarbeiterHatSchulung=1"   // you can put anything more in this string (Where Clausel)


               tdSqlIsearch(oCursor,"Name1",13.60,65.2,aFlds,20,cLabel,'@!',,;
                '  Inkrementelle Suche  -  Stammdaten Mitarbeiter',;
                     0,0,,,,,,,tdSetFont('get'),,,.F.,;  // not Modal
                     ,,.T.,;                             // turn on mouse Wheel response
                       tdSetColor("nDlgBg2"),,.T.)       // Dlg color for 2nd level Demo windows
Gruß
Markus
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: ActiveX Controls auch für Xbase++ (+Beispiele)

Beitrag von AUGE_OHR »

Rudolf hat geschrieben:dann werde ich mir Topdown nochmal genauer anschauen ...
du hast doch auch den Source zu Topdown :-"
gruss by OHR
Jimmy
Benutzeravatar
satmax
1000 working lines a day
1000 working lines a day
Beiträge: 831
Registriert: Do, 02. Dez 2010 19:34
Wohnort: Biberbach in Österreich
Hat sich bedankt: 1 Mal
Danksagung erhalten: 1 Mal
Kontaktdaten:

Re: ActiveX Controls auch für Xbase++ (+Beispiele)

Beitrag von satmax »

Ich habe mir nun vor ein paar Tagen das, vielmehr die Controls von eXontrol (http://www.exontrol.com) gekauft und muss sagen ich bin bisher sehr zufrieden damit. 2-3 mal den Support kontaktiert und immer innerhalb einer Stunde eine perfekte Antwort bekommen.

Warum DIE Controls? Eigentlich wollte ich nur G2antt, dann hatten die mir plötzlich ein Sonderangebot vorgeschlagen, 5 beliebige Tools, maximal €549,-

Da habe ich mich kurzfristig entschieden:

ExG2antt
ExSchedule
ExGrid
ExFileVw
ExList

Für all diese Controls gib es im ExHelper viele Xbase++ Beispiele!

Das G2Antt lauft schon ganz gut und ich konnte damit heute schon den ersten Kunden beeindrucken. :) Für die Ressourcenplanung finde ich dieses Modul nahezu perfekt: relativ einfach einzubinden und schnell im Betrieb, dazu auch noch ein fairer Preis. Und ja, natürlich arbeite ich inzwischen schon mit Xbase++ V2. :)

In Summe finde ich Xbase++, SQLExpress und List&Label eigentlich schon als ganz gute Lösung. Die ActiveX Controls von eXontrol sind dann das Sahnehäubchen oben drauf. :D

Auch noch ein Danke an die Forenmitglieder die mir bei ActiveX auf die Sprünge geholfen haben.
Gruß
Markus
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15688
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: ActiveX Controls auch für Xbase++ (+Beispiele)

Beitrag von brandelh »

Frage, kommt der "Xbase++ Zugang" als Quellcode oder braucht man gar keinen ?
Kann man also den Source Code der das Verwendet einfach mit jeder Version von Xbase++ kompilieren (die ActiveX unterstützt) ?
Gruß
Hubert
Benutzeravatar
Rudolf
Programmier-Gott
Programmier-Gott
Beiträge: 1418
Registriert: Mo, 02. Jan 2006 23:03
Wohnort: Salzburg/Österreich
Kontaktdaten:

Re: ActiveX Controls auch für Xbase++ (+Beispiele)

Beitrag von Rudolf »

Hallo,
wie hast Du den Datenzugriff beim Grid gelöst ? Über ADO ?

Grüße
Rudolf
Benutzeravatar
satmax
1000 working lines a day
1000 working lines a day
Beiträge: 831
Registriert: Do, 02. Dez 2010 19:34
Wohnort: Biberbach in Österreich
Hat sich bedankt: 1 Mal
Danksagung erhalten: 1 Mal
Kontaktdaten:

Re: ActiveX Controls auch für Xbase++ (+Beispiele)

Beitrag von satmax »

Braucht man nicht, einfach das ActiveX Control installieren. Läuft mit jeder Xbase Version. Optional kann man den Source der ActiveX Controls auch kaufen. IMHO braucht man den nicht.

grob geht das so:

Code: Alles auswählen

oG2antt:= XbpActiveXControl():new( oDa, , {11,20}, {bSize[1]-22,bSize[2]-165} )
oG2antt:CLSID := "{CD481F4D-2D25-4759-803F-752C568F53B7}"
oG2antt:license:="xxxxxxxxxxxx"  // Braucht man beim Demo nicht!
oG2antt:create()


// Dann diverse Einstellungen:
oG2antt:BeginUpdate()

oG2antt:OnResizeControl := 1/*exResizeChart*/
oG2antt:ColumnAutoResize := .t.

oG2antt:Chart():OverviewVisible := -1/*exOverviewShowAll*/

oG2antt:DrawGridLines := -1/*exAllLines*/
oG2antt:GridLineStyle := 12/*exGridLinesDash*/
oG2antt:ScrollBySingleLine := .T.

oG2antt:DblClick := {|Shift,X,Y| OnDblClick(oG2antt,Shift,X,Y,oAppDlg, oAppMenu)} /*Occurs when the user dblclk the left mouse button over an object.*/

...

oChart           := oG2antt:Chart()
oChart:WeekDays  := "Sonntag Montag Dienstag Mittwoch Donnerstag Freitag Samstag"
oChart:UnitWidth := 24 // 350
oChart:UnitScale := 65536 // /* 4096 exDay */  /*65536 exHour*/ /* 1048576 exMinute*/
oChart:SetProperty("PaneWidth",.F.,128)
oChart:Bars:Item("Task"):OverlaidType := 4611 // 4611// 515/* 3 exOverlaidBarsStack*/ /* 4 exOverlaidBarsCascade*/

oChart:MarkTimeZone("Z1",date(),date()+1,12895487,";;<b>Heute</b>")
oChart:FirstWeekDay := 1/*exMonday*/
...


Was auch geht ist die eXcontrol eigene Scirptsprache. Folgender Code reicht völlig um das Gannt Diagramm zu drucken (Vorschau):

Code: Alles auswählen

// Laut Hilfe: oG2antt:Template := "Dim p;p = CreateObject(`Exontrol.Print`);p.PrintExt = Me;p.AutoRelease = False;p.Preview()

// Meine Lösung:
LOCAL Template := "dim p;p=CreateObject(`Exontrol.Print`);"+;
			  "p.AutoRelease=True;"+;
			  "p.PageOrientation = " + STR(exLandscape)+";"+; 
			  "p.PrintExt=Me;p.Preview()"
										  
			oG2antt:ExecuteTemplate(Template)
Das habe ich heute zum ersten mal versucht, könnte manches vereinfachen.
Ein kleines Problem dabei habe ich noch, die Vorschau wird hinter meinem Programm angezeigt. Ich muss das Fenster also noch in den Vordergrund holen.

Beinahe sämtliche Einstellungen kann man im exHelper ausprobieren und sich dann den Xbase Source anzeigen lassen. Alles ist als Demo verfügbar. einzige Einschränkung ist ein Copyright Hinweis.

Beim Ausliefern die DLL(s) mitgeben und mit
regsrv32 ExG2ann.dll
regsrv32 ExPrint.dll
...

registrieren. Fertig.
Gruß
Markus
Benutzeravatar
satmax
1000 working lines a day
1000 working lines a day
Beiträge: 831
Registriert: Do, 02. Dez 2010 19:34
Wohnort: Biberbach in Österreich
Hat sich bedankt: 1 Mal
Danksagung erhalten: 1 Mal
Kontaktdaten:

Re: ActiveX Controls auch für Xbase++ (+Beispiele)

Beitrag von satmax »

Rudolf hat geschrieben:Hallo,
wie hast Du den Datenzugriff beim Grid gelöst ? Über ADO ?

Grüße
Rudolf
Die Grid habe ich noch nicht im Einsatz. Der Plan ist aber, das ich die Grid vorerst nur zum Anzeigen der Daten Verwende. Da ich mit SQLExpress arbeite hole ich mir die Daten einfach per SQLSelect und verwende Sie dann ähnlich wie bei einem Array Browser. Solange man eine übersichtliche Menge an Spalten hat, kann man so auch 1000 Datensätze innerhalb einer Sekunde anzeigen. Aber auch das bearbeiten und speichern sollte so kein Problem sein.

Beim Gannt (Resourcenplanung) mache ich das so, funktioniert einwandfrei.
Gruß
Markus
Benutzeravatar
Rudolf
Programmier-Gott
Programmier-Gott
Beiträge: 1418
Registriert: Mo, 02. Jan 2006 23:03
Wohnort: Salzburg/Österreich
Kontaktdaten:

Re: ActiveX Controls auch für Xbase++ (+Beispiele)

Beitrag von Rudolf »

Hallo Markus,
danke für die Inof, ich verwende auch SQLEXPRESS, hast Du vielleicht ein paar Zeilen Code wie man die Tabelle im Control aufbauen kann ? Oder finde ich das im exHelper ?
Grüße
Rudolf
Benutzeravatar
satmax
1000 working lines a day
1000 working lines a day
Beiträge: 831
Registriert: Do, 02. Dez 2010 19:34
Wohnort: Biberbach in Österreich
Hat sich bedankt: 1 Mal
Danksagung erhalten: 1 Mal
Kontaktdaten:

Re: ActiveX Controls auch für Xbase++ (+Beispiele)

Beitrag von satmax »

1:1 aus dem exHelper kopiert:

Code: Alles auswählen

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oGrid
	LOCAL oItems

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oGrid := XbpActiveXControl():new( oForm:drawingArea )
	oGrid:CLSID  := "Exontrol.Grid.1" /*{101EE60F-7B07-48B0-A13A-F32BAE7DA165}*/
	oGrid:create(,, {10,60},{610,370} )

		oGrid:Columns():Add("desc"):SortType := 3/*SortDateTime*/
		oItems := oGrid:Items()
			oItems:AddItem("1/1/2001 11:00")
			oItems:AddItem("1/1/2001 10:10")
			oItems:AddItem("1/3/2003")
			oItems:SortChildren(0,0,.F.)

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
Gruß
Markus
Benutzeravatar
satmax
1000 working lines a day
1000 working lines a day
Beiträge: 831
Registriert: Do, 02. Dez 2010 19:34
Wohnort: Biberbach in Österreich
Hat sich bedankt: 1 Mal
Danksagung erhalten: 1 Mal
Kontaktdaten:

Re: ActiveX Controls auch für Xbase++ (+Beispiele)

Beitrag von satmax »

oder so:

Code: Alles auswählen

#include "AppEvent.ch"
#include "ActiveX.ch"

PROCEDURE Main
 	LOCAL oForm
	LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
	LOCAL oGrid
	LOCAL oItems

	oForm := XbpDialog():new( AppDesktop() )
	oForm:drawingArea:clipChildren := .T.
	oForm:create( ,,{100,100}, {640,480},, .F. )
	oForm:close  := {|| PostAppEvent( xbeP_Quit )}

	oGrid := XbpActiveXControl():new( oForm:drawingArea )
	oGrid:CLSID  := "Exontrol.Grid.1" /*{101EE60F-7B07-48B0-A13A-F32BAE7DA165}*/
	oGrid:create(,, {10,60},{610,370} )

		oGrid:Columns():Add("desc"):SortType := 3/*SortDateTime*/
		oItems := oGrid:Items()
			oItems:AddItem("1/1/2001 11:00")
			oItems:AddItem("1/1/2001 10:10")
			oItems:AddItem("1/3/2003")
			oItems:SortChildren(0,0,.F.)

	oForm:Show()
	DO WHILE nEvent != xbeP_Quit
		nEvent := AppEvent( @mp1, @mp2, @oXbp )
		oXbp:handleEvent( nEvent, mp1, mp2 )
	ENDDO 
RETURN
Aus

Code: Alles auswählen

oItems:AddItem("1/1/2001 11:00")
wird dann so etwas für SQLExpress:

Code: Alles auswählen

oItems:AddItem(::oCurs:FieldGet("TerminVon"))
Gruß
Markus
Antworten