[Lazarus] VirtualTreeView bug
ik
idokan at gmail.com
Thu Oct 18 18:15:40 CEST 2012
On Thu, Oct 18, 2012 at 5:21 PM, luiz americo pereira camara
<luizmed at oi.com.br> wrote:
>
>
> 2012/10/18 ik <idokan at gmail.com>
>>
>> Hello,
>>
>> I'm trying to figure out why this keep on existing on VT from CCR
>> virtualtree-new .
>
>
>
> A new release is already done (just i could not upload to Lazarus-ccr) so
> maybe is already fixed.
>
> Anyway you can send the complete project here so i can test
I attched it to here, hopefully others might also see and might find
that I do something wrong, if it's not a bug
>
> Luiz
Ido
>
>>
>>
>> The problem is that it display only the first char instead of the whole
>> string.
>>
>> My code:
>> ------------------
>> ....
>> type
>> PTreeData = ^TTreeData;
>> TTreeData = record
>> Column1,
>> Column2,
>> Column3 : String;
>> end;
>>
>>
>> procedure TForm1.FormCreate ( Sender : TObject ) ;
>> var
>> Column : TVirtualTreeColumn;
>> i : integer;
>> begin
>> Randomize;
>> VST.Header.Options := VST.Header.Options +[hoVisible];
>> VST.Header.Style := hsFlatButtons;
>> for i := 1 to 3 do
>> begin
>> Column := VST.Header.Columns.Add;
>> Column.Text := 'column #' + IntToStr(i);
>> Column.Options := Column.Options + [coAllowClick, coResizable];
>> Column.Width := UTF8Length(Column.Text) + 100;
>> end;
>>
>> VST.TreeOptions.MiscOptions := VST.TreeOptions.MiscOptions +
>> [toEditable,toGridExtensions];
>> VST.TreeOptions.SelectionOptions := VST.TreeOptions.SelectionOptions +
>> [toExtendedFocus, toMultiSelect];
>>
>> end;
>>
>> procedure TForm1.btnAddRootClick ( Sender : TObject ) ;
>> Var
>> Data : PTreeData;
>> XNode : PVirtualNode;
>> Rand : Integer;
>> begin
>> Rand := Random(99);
>> XNode := VST.AddChild(nil);
>>
>> if VST.AbsoluteIndex(XNode) > -1 then
>> Begin
>> Data := VST.GetNodeData(XNode);
>> Data^.Column1 := 'One ' + IntToStr(Rand);
>> Data^.Column2 := 'Two ' + IntToStr(Rand + 10);
>> Data^.Column3 := 'Three ' + IntToStr(Rand - 5);
>> End;
>>
>> end;
>>
>> procedure TForm1.VSTChange ( Sender : TBaseVirtualTree; Node :
>> PVirtualNode ) ;
>> begin
>> VST.Refresh;
>> end;
>>
>> procedure TForm1.VSTFocusChanged ( Sender : TBaseVirtualTree;
>> Node : PVirtualNode; Column : TColumnIndex ) ;
>> begin
>> VST.Refresh;
>> end;
>>
>> procedure TForm1.VSTGetNodeDataSize ( Sender : TBaseVirtualTree;
>> var NodeDataSize : Integer ) ;
>> begin
>> NodeDataSize := SizeOf(TTreeData);
>> end;
>>
>> procedure TForm1.VSTGetText ( Sender : TBaseVirtualTree; Node :
>> PVirtualNode;
>> Column : TColumnIndex; TextType : TVSTTextType; var CellText :
>> WideString ) ;
>> var
>> Data : PTreeData;
>> begin
>> Data := VST.GetNodeData(Node);
>> case Column of
>> 0 : CellText := Data^.Column1;
>> 1 : CellText := Data^.Column2;
>> 2 : CellText := Data^.Column3;
>> end;
>> end;
>>
>> procedure TForm1.VSTNewText ( Sender : TBaseVirtualTree; Node :
>> PVirtualNode;
>> Column : TColumnIndex; NewText : WideString ) ;
>> var
>> Data : PTreeData;
>> begin
>> Data := VST.GetNodeData(Node);
>> case Column of
>> 0 : Data^.Column1 := NewText;
>> 1 : Data^.Column2 := NewText;
>> 2 : Data^.Column3 := NewText;
>> end;
>> end;
>>
>> ...
>>
>> -------------------------
>> Any ideas why it happens and how to solve this ?
>>
>> Thanks,
>> Ido
>>
>> --
>> _______________________________________________
>> Lazarus mailing list
>> Lazarus at lists.lazarus.freepascal.org
>> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
>>
>
>
> --
> _______________________________________________
> Lazarus mailing list
> Lazarus at lists.lazarus.freepascal.org
> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: vtv.tar.gz
Type: application/x-gzip
Size: 67087 bytes
Desc: not available
URL: <http://lists.lazarus-ide.org/pipermail/lazarus/attachments/20121018/fba40102/attachment-0003.bin>
More information about the Lazarus
mailing list