AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

[VST] Zeilenumbruch in Nodes

Offene Frage von "phXql"
Ein Thema von phXql · begonnen am 28. Dez 2004 · letzter Beitrag vom 29. Nov 2005
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von phXql
phXql

Registriert seit: 11. Mär 2004
Ort: Mühldorf
824 Beiträge
 
#11

Re: [VST] Zeilenumbruch in Nodes

  Alt 3. Jan 2005, 16:31
ne.. ich lasse nur den message-text eines error-objekts ausgeben. und wenn da ein zeilenumbruch drin ist, wird der nicht richtig dargstellt. kein wide-char oder sowas...
"Dunkel die andere Seite ist"
"Yoda! Halts Maul und iss deinen Toast!"
  Mit Zitat antworten Zitat
Benutzerbild von phXql
phXql

Registriert seit: 11. Mär 2004
Ort: Mühldorf
824 Beiträge
 
#12

Re: [VST] Zeilenumbruch in Nodes

  Alt 29. Jan 2005, 12:03
So kleine Korrektur. Im OnGetText-Ereignis wird der Celltext als WideString zurückgegeben. Wie macht man einen Zeilenumbruch (#13#10) in einem Widestring?

mfg phXql
"Dunkel die andere Seite ist"
"Yoda! Halts Maul und iss deinen Toast!"
  Mit Zitat antworten Zitat
generic

Registriert seit: 24. Mär 2004
Ort: bei Hannover
2.416 Beiträge
 
Delphi XE5 Professional
 
#13

Re: [VST] Zeilenumbruch in Nodes

  Alt 28. Nov 2005, 13:53
ich hab da gerade nochmal rumprobiert.

hast du mehrere spalten oder vieleicht static-texte?
Coding BOTT - Video Tutorials rund um das Programmieren - https://www.youtube.com/@codingbott
  Mit Zitat antworten Zitat
Angel4585

Registriert seit: 4. Okt 2005
Ort: i.d.N.v. Freiburg im Breisgau
2.199 Beiträge
 
Delphi 2010 Professional
 
#14

Re: [VST] Zeilenumbruch in Nodes

  Alt 28. Nov 2005, 13:58
mach mal anstatt +#10#13+ => +sLineBreak+

(Ups, sLineBreak steht ja für #13#10, Sorry)
Martin Weber
Ich bin ein Rüsselmops
  Mit Zitat antworten Zitat
Benutzerbild von phXql
phXql

Registriert seit: 11. Mär 2004
Ort: Mühldorf
824 Beiträge
 
#15

Re: [VST] Zeilenumbruch in Nodes

  Alt 28. Nov 2005, 17:51
Zitat von generic:
ich hab da gerade nochmal rumprobiert.

hast du mehrere spalten oder vieleicht static-texte?
ich hab mehrere spalten, ja...
"Dunkel die andere Seite ist"
"Yoda! Halts Maul und iss deinen Toast!"
  Mit Zitat antworten Zitat
generic

Registriert seit: 24. Mär 2004
Ort: bei Hannover
2.416 Beiträge
 
Delphi XE5 Professional
 
#16

Re: [VST] Zeilenumbruch in Nodes

  Alt 29. Nov 2005, 09:56
hmm, komisch komisch.
ich poste mal alles zu dem multiline was ich im letzten projekte verwendet habe.
bei multiline wird der static text nicht angezeigt.

der tree ist schon komplett aufgebaut wird nur noch durch folgendes in multiline gesetzt
Delphi-Quellcode:
vst_vergleich.IterateSubtree(nil, SetVstMultilineCallback,nil);

procedure Tfrm_vergleich.SetVstMultilineCallback(Sender: TBaseVirtualTree; Node: PVirtualNode; Data: Pointer; var Abort: Boolean);
begin
  sender.MultiLine[node]:=True;
  Abort:=false;
end;
Im onMeasureItem errechne ich noch von allen spalten die maximale höhe+5.
der Knoten soll aber mindestens DefaultNodeHeight haben.

Delphi-Quellcode:
procedure Tfrm_vergleich.vst_vergleichMeasureItem(Sender: TBaseVirtualTree;
  TargetCanvas: TCanvas; Node: PVirtualNode; var NodeHeight: Integer);
var
  i: integer;
begin
  if Sender.MultiLine[Node] then
  begin
    NodeHeight:=vst_vergleich.DefaultNodeHeight;
    for i:=0 to vst_vergleich.Header.Columns.Count-1 do
      NodeHeight := Max(vst_vergleich.ComputeNodeHeight(TargetCanvas, Node, i)+5, NodeHeight);
  end;
end;
so nur noch mein vst:
Delphi-Quellcode:
var
  vst_vergleich: TVirtualStringTree;

  vst_vergleich := TVirtualStringTree.Create(Self);
  with vst_vergleich do
  begin
    Name := 'vst_vergleich';
    Parent := Self;
    Left := 0;
    Top := 23;
    Width := 792;
    Height := 550;
    Align := alClient;
    Header.AutoSizeIndex := 0;
    Header.Font.Charset := DEFAULT_CHARSET;
    Header.Font.Color := clWindowText;
    Header.Font.Height := -11;
    Header.Font.Name := 'Tahoma';
    Header.Font.Style := [];
    Header.Options := [hoColumnResize, hoVisible];
    Header.Style := hsPlates;
    HintAnimation := hatNone;
    HintMode := hmHint;
    LineMode := lmBands;
    LineStyle := lsSolid;
    ParentShowHint := False;
    ShowHint := True;
    TabOrder := 1;
    TreeOptions.MiscOptions := [toAcceptOLEDrop, toFullRepaintOnResize, toGridExtensions, toInitOnSave, toToggleOnDblClick, toWheelPanning, toVariableNodeHeight];
    TreeOptions.PaintOptions := [toShowButtons, toShowDropmark, toShowHorzGridLines, toShowRoot, toShowTreeLines, toShowVertGridLines, toThemeAware, toUseBlendedImages, toFullVertGridLines];
    TreeOptions.SelectionOptions := [toExtendedFocus, toFullRowSelect];
    OnGetText := vst_vergleichGetText;
    OnPaintText := vst_vergleichPaintText;
    OnGetHint := vst_vergleichGetHint;
    OnMeasureItem := vst_vergleichMeasureItem;
    with Columns.Add do begin
      Options := [coDraggable, coEnabled, coParentBidiMode, coParentColor, coResizable, coShowDropMark, coVisible];
      Position := 0;
      Tag := 5;
      Width := 350;
      WideText := 'Bezeichnung';
    end;
    WideDefaultText := '';
  end;
nicht wundern das nur 1 spalte da ist. es werden noch weitere dynamisch hinzugefügt.
das passiert ungefähr so:
Delphi-Quellcode:
    fheader:=vst_vergleich.Header.Columns.Add;
    fheader.Width:=150;
    fheader.Options:=fheader.Options-[coAllowClick];
    fheader.Text:='text text';
ich nutze Version 4.3.1 des virtualstringtree.
läuft ohne probleme mit delphi 6 pro, delphi7 enterprise und delphi2005 enterprise

wenn das dann immer noch nicht geht, melde dich mal bitte per icq oder pm bei mir
Coding BOTT - Video Tutorials rund um das Programmieren - https://www.youtube.com/@codingbott
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:46 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz