dsXBrowse: Wie Symbole für logische Werte [erl ohne Lösung]

Moderator: Moderatoren

Antworten
Benutzeravatar
Herbert
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 1991
Registriert: Do, 14. Aug 2008 0:22
Wohnort: Gmunden am Traunsee, Österreich
Danksagung erhalten: 3 Mal
Kontaktdaten:

dsXBrowse: Wie Symbole für logische Werte [erl ohne Lösung]

Beitrag von Herbert »

Ich blick nicht durch

definiere in der .ARC

Code: Alles auswählen

#define   ID_LIS_OK_BMP      320
#define   ID_LIS_NOK_BMP     321
BITMAP  ID_LIS_OK_BMP      = "Icons\pbokay.bmp"
BITMAP  ID_LIS_NOK_BMP     = "Icons\pbcancel.bmp"
definiere die Spalte

Code: Alles auswählen

    oCol := dsXColumn():new(XBPCOL_TYPE_BITMAP , &(cDataLink), cTitel)
wobei für logische Werte der Datalink die ID zurückgibt. Es erscheint in der Spalte die ID als Nummer

Code: Alles auswählen

//  cBuf := "IIF("+cField+"=.T.,ID_LIS_OK_BMP,ID_LIS_NOK_BMP)"   // id der buttons (320/321) -  gibt zur Laufzeit Fehlermeldung, dass ID.. nicht bekannt
  cBuf := "IIF("+cField+"=.T.,320,321)"     // cField ist der DB-Feldname
  cDataLink     := "{|x| iif(X==NIL,"+cBuf+","+cField+" := x )}"
Was mache ich falsch?
Zuletzt geändert von Herbert am Do, 11. Mär 2010 17:16, insgesamt 1-mal geändert.
Grüsse Herbert
Immer in Bewegung...
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9345
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 100 Mal
Danksagung erhalten: 359 Mal
Kontaktdaten:

Re: dsXBrowse: Wie Symbole für logische Werte?

Beitrag von Tom »

Hast Du eine Ressourcendatei (ARC) erzeugt und auch an Deine App gelinkt?
Herzlich,
Tom
Benutzeravatar
Herbert
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 1991
Registriert: Do, 14. Aug 2008 0:22
Wohnort: Gmunden am Traunsee, Österreich
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: dsXBrowse: Wie Symbole für logische Werte?

Beitrag von Herbert »

JA
Grüsse Herbert
Immer in Bewegung...
Benutzeravatar
Herbert
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 1991
Registriert: Do, 14. Aug 2008 0:22
Wohnort: Gmunden am Traunsee, Österreich
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: dsXBrowse: Wie Symbole für logische Werte?

Beitrag von Herbert »

Ich gebs auf. Bleibe bei 'Ja' und 'Nein', was offenbar alle mit XClass auch machen.
Grüsse Herbert
Immer in Bewegung...
Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 16501
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Hat sich bedankt: 111 Mal
Danksagung erhalten: 48 Mal
Kontaktdaten:

Re: dsXBrowse: Wie Symbole für logische Werte?

Beitrag von Martin Altmann »

Moin Herbert,
sorry - habe es überlesen! XClass++ nimmt standardmäßig eine Checkbox für das Darstellen des logischen Wertes - und das funzt einwandfrei bei mir.

Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/

Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 16501
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Hat sich bedankt: 111 Mal
Danksagung erhalten: 48 Mal
Kontaktdaten:

Re: dsXBrowse: Wie Symbole für logische Werte?

Beitrag von Martin Altmann »

Hast Du Dir mal die CellEditType() in der Hilfe angeschaut?
Da musst Du für Deine Spalte (hier die 6.) den Eintrag wahrscheinlich folgendermaßen setzen:

Code: Alles auswählen

aCol[6]:CellEditType( CELL_IMAGE, , , iif( logisches_Feld, ID_LIS_OK_BMP, ID_LIS_NOK_BMP ) )
Kann auch sein, dass Du statt der ID den Pfad nehmen musst oder mit LoadResource() an der Stelle arbeiten musst.

Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/

Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Herbert
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 1991
Registriert: Do, 14. Aug 2008 0:22
Wohnort: Gmunden am Traunsee, Österreich
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: dsXBrowse: Wie Symbole für logische Werte?

Beitrag von Herbert »

Danke Martin für dein Erbarmen =D>
Also: Ich will nur ansehen ohne Editieren und die Daten werden aus AddColumn() nicht AddColumnDB geladen.
Deshalb kein CellEditType().

Ich werde morgen Dieter Stelzner fragen, ob da ev. ein Fehler vorliegt, da ich eigentlich nicht LoadResource verwenden möchte (und auch nicht testen mag).

Liebe Grüsse
Grüsse Herbert
Immer in Bewegung...
Benutzeravatar
Herbert
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 1991
Registriert: Do, 14. Aug 2008 0:22
Wohnort: Gmunden am Traunsee, Österreich
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: dsXBrowse: Wie Symbole für logische Werte?

Beitrag von Herbert »

Nun gut, Support ist eine Kunst...

Code: Alles auswählen

Guten Tag,
scheuen sie sich bitte die Beispiele in XClass\Demo\Browse_DB an.
Da sind jede Menge Beispiele mit Checkbox, Combobox
Der Begriff Checkbox kommt da ganze 2x vor.

Was bereits war:

Code: Alles auswählen

oBrowse:LogicalAsCheckbox := .T.
hab noch eingebaut (bei logioscher Info):

Code: Alles auswählen

oCol:CellEditType( CELL_CHECKBOX )
was nichts bringt und so zum Schluss führt, dass nur dsxColumnDB resp. dsxColumnA grafisch anzeigen können.
Grüsse Herbert
Immer in Bewegung...
Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 16501
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Hat sich bedankt: 111 Mal
Danksagung erhalten: 48 Mal
Kontaktdaten:

Re: dsXBrowse: Wie Symbole für logische Werte [erl ohne Lösung]

Beitrag von Martin Altmann »

Hallo Herbert,
nun - ich nutze dsXBrowse mit AddColumnA und dsXColumn - und bei mir geht das wunderbar!

Code: Alles auswählen

::optionen := dsXBrowse():new( ::drawingArea, , {24,72}, {626,480} )
::optionen:clipSiblings := .T.
::optionen:type := XBPSTATIC_TYPE_GROUPBOX
::optionen:EnableSearch := .F.
::optionen:EnableEdit := .T.
::optionen:DirectEdit := .F.
::optionen:ColSep := .T.
::optionen:CursorMode := XBPBRW_CURSOR_ROW
::optionen:RowSep := .F.
::optionen:QuickEdit := .T.
::optionen:HScroll( .F. )
::optionen:EnableRowBreak := .F.
::optionen:SetSelectMode( SELECT_NONE )
::optionen:EnableColMove := .F.
::optionen:FootHeight := 1
::optionen:EnableFocusFrame( .f. )
::optionen:EnableColResize := .F.
::optionen:EnableAppend := .F.
::optionen:hitTopBlock    := {|| SetStatusMessage("Erster Sonderraum...", GRA_CLR_RED, 200, .T. ), AnimiereCharacter( "Alert" ), CharacterDenke( "Dies ist der erste Eintrag!" ) }
::optionen:hitBottomBlock := {|| SetStatusMessage("Letzter Sonderraum...", GRA_CLR_RED, 200, .T. ), AnimiereCharacter( "Alert" ), CharacterDenke( "Dies ist der letzte Eintrag!" ) }

ocolumn := dsXColumn():new(XBPCOL_TYPE_TEXT,1,"Tag" )
ocolumn:enableEdit := .f.
ocolumn:ColSep := .t.
ocolumn:alignment := XBPALIGN_HCENTER
::optionen:AddColumnA( oColumn )

ocolumn := dsXColumn():new(XBPCOL_TYPE_TEXT,2,"Varietät" )
ocolumn:enableEdit := .f.
ocolumn:ColSep := .t.
ocolumn:alignment := XBPALIGN_LEFT
::optionen:AddColumnA( oColumn )

ocolumn := dsXColumn():new(XBPCOL_TYPE_TEXT,3,"Enr." )
ocolumn:enableEdit := .f.
ocolumn:ColSep := .t.
ocolumn:alignment := XBPALIGN_RIGHT
::optionen:AddColumnA( oColumn )

ocolumn := dsXColumn():new(XBPCOL_TYPE_TEXT,4,"Hunde" )
ocolumn:enableEdit := .f.
ocolumn:ColSep := .t.
ocolumn:alignment := XBPALIGN_RIGHT
::optionen:AddColumnA( oColumn )

ocolumn := dsXColumn():new(,5,alltrim( str( g&dateiname->sonderg1 ) ) + " m²" )
ocolumn:enableEdit := .f.
ocolumn:CellEditType( CELL_CHECKBOX )
ocolumn:ColSep := .t.
ocolumn:alignment := XBPALIGN_HCENTER
::optionen:AddColumnA( oColumn )

text1 := iif( ( g&dateiname->sonder2 > 0 ), alltrim( str( g&dateiname->sonderg2 ) ) + " m²", " " )
ocolumn := dsXColumn():new(,6,text1 )
ocolumn:enableEdit := .f.
ocolumn:CellEditType( CELL_CHECKBOX )
ocolumn:ColSep := .t.
ocolumn:alignment := XBPALIGN_HCENTER
::optionen:AddColumnA( oColumn )

ocolumn := dsXColumn():new(,7,alltrim( str( g&dateiname->sonderg1 ) ) + " m²" )
ocolumn:enableEdit := .t.
ocolumn:CellEditType( CELL_CHECKBOX )
ocolumn:ColSep := .t.
ocolumn:colorBlock := {|| { NIL, GRA_CLR_GREEN, NIL, GRA_CLR_GREEN } }
ocolumn:alignment := XBPALIGN_HCENTER
::optionen:AddColumnA( oColumn )

ocolumn := dsXColumn():new(,8,text1 )
ocolumn:enableEdit := ( text1 <> " " )
ocolumn:CellEditType( CELL_CHECKBOX )
ocolumn:ColSep := .t.
ocolumn:colorBlock := {|| iif( ( text1 <> " "), { NIL, GRA_CLR_GREEN, NIL, GRA_CLR_GREEN }, ) }
ocolumn:alignment := XBPALIGN_HCENTER
::optionen:AddColumnA( oColumn )

::optionen:Connect( ::aus )
aadd( ::editControls, ::optionen )
Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/

Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Herbert
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 1991
Registriert: Do, 14. Aug 2008 0:22
Wohnort: Gmunden am Traunsee, Österreich
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: dsXBrowse: Wie Symbole für logische Werte [erl ohne Lösung]

Beitrag von Herbert »

Ja bei Edit ists ok.
Ich will aber nur anzeigen...
und du verwendest AddColumnA.

Ich lebe nun mal mit 'Ja' und 'Nein' in der Spalte.

Werde mich aber das Xclass ganz wegnehmen. Brauche nur das Browse und ein Kalender-Dingens.
Grüsse Herbert
Immer in Bewegung...
Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 16501
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Hat sich bedankt: 111 Mal
Danksagung erhalten: 48 Mal
Kontaktdaten:

Re: dsXBrowse: Wie Symbole für logische Werte [erl ohne Lösung]

Beitrag von Martin Altmann »

Herbert,
dann setze doch Edit auf .f.!
Bei den Spalten mit den Checkboxen ist teilweise auch kein Edit möglich (wie Du im source sehen kannst)!

Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/

Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Herbert
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 1991
Registriert: Do, 14. Aug 2008 0:22
Wohnort: Gmunden am Traunsee, Österreich
Danksagung erhalten: 3 Mal
Kontaktdaten:

Re: dsXBrowse: Wie Symbole für logische Werte [erl ohne Lösung]

Beitrag von Herbert »

Ja, schon, nur klappts eben auch so nicht.
Grüsse Herbert
Immer in Bewegung...
Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 16501
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Hat sich bedankt: 111 Mal
Danksagung erhalten: 48 Mal
Kontaktdaten:

Re: dsXBrowse: Wie Symbole für logische Werte [erl ohne Lösung]

Beitrag von Martin Altmann »

Herbert,
was genau klappt denn bei Dir nicht?
Bei meinem Code werden die Checkboxen ordentlich angezeigt - teilweise editierbar, teilweise nicht (so, wie gewollt).

Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/

Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Antworten