Quickbrowse, Spaltenlänge vom Benutzer veränderbar
Verfasst: Di, 15. Sep 2015 15:02
Hi, ich kann machen, was ich will, ich bekomme es einfach nciht hin, dass der Benutzer die Spaltenlänge in einem XbpQuickBrowse verändern kann.
Ich habe in der Hilfe die Eigenschaft :sizeCols := .T. gefunden, die standardmäßig sowieso auf .T. sein sollte. Diese habe ich dann auch auf .T. gesetzt, doch leider ohne den gewünschten Erfolg.
Hier mein Code:
DAnn hab ich noch versucht mit setColWidth() die Spaltenlänge für alle Spalten auf ein Mindestmaß zu stellen, was laut Hilfe gehen sollte, wenn man den zweiten Parameter weglässt, doch dann kommt auch ein Fehler. Vielleicht ist das mit meiner Version von Xbase++ einfach noch so (1.90355).
Und noch etwas: und zwar habe ich versucht mit setHeader den Header zu ändern, das funktioniert soweit auch, aber g ibt es nicht noch eine Möglichkeit den Header mit einer Eigenschaft zu ändern statt mit einer Methode? Z.b. Über den Datalink? Ansonsten wird die Spaltenbreite ja nicht automatisch an den Inhalt des Headers angepasst.
Ich habe in der Hilfe die Eigenschaft :sizeCols := .T. gefunden, die standardmäßig sowieso auf .T. sein sollte. Diese habe ich dann auch auf .T. gesetzt, doch leider ohne den gewünschten Erfolg.
Hier mein Code:
Code: Alles auswählen
browse_pos[1] := 0
browse_pos[2] := 0
browse_size[1] := oDlg_browse:currentSize()[1]-16
browse_size[2] := oDlg_browse:currentSize()[2]-39
oBrowse := XbpQuickBrowse():new(oDlg_browse:drawingArea,,browse_pos, browse_size,{ { XBP_PP_COMPOUNDNAME, "8.Arial" } })
oBrowse:sizeCols := .T.
oBrowse:dataLink := DacPagedDataStore():new(aSequences)
oBrowse:create()
oBrowse:setHeader(aHeader)
oBrowse:setColWidth(100,2)
oBrowse:forceStable()
oDlg_browse:resize := {|aOldSize, aNewSize, oSelf | ;
proc_resize_sequence_browse( oBrowse ;
, aNewSize ;
) ;
}
SetAppFocus(oBrowse)
Und noch etwas: und zwar habe ich versucht mit setHeader den Header zu ändern, das funktioniert soweit auch, aber g ibt es nicht noch eine Möglichkeit den Header mit einer Eigenschaft zu ändern statt mit einer Methode? Z.b. Über den Datalink? Ansonsten wird die Spaltenbreite ja nicht automatisch an den Inhalt des Headers angepasst.