AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Zeilenumbruch der Caption von TabSheet's

Ein Thema von Alex_ITA01 · begonnen am 6. Jan 2005 · letzter Beitrag vom 6. Jan 2005
Antwort Antwort
Alex_ITA01

Registriert seit: 22. Sep 2003
1.115 Beiträge
 
Delphi 12 Athens
 
#1

Zeilenumbruch der Caption von TabSheet's

  Alt 6. Jan 2005, 10:08
Hallo erstmal,
ich habe ein PageControl mit mehreren TabSheets.Diese sind alle links ausgerichtet (also an der linken Seite des PageControls). Bekomme ich es irgendwie hin, wenn ich Caption mit irgendwas fülle (vom TabSheet) das der Text nicht vertikal sondern horizontal geschrieben wird? Wenn nicht, geht es irgendwie, dass ich wenigstens ein Zeilenumbruch in der "vertikalen" Caption hinbekomme?

So gehts nämlich nicht:
TS_Test.Caption := 'Test' + #10#13 + 'Tester'; MFg Alex
Let's fetz sprach der Frosch und sprang in den Mixer
  Mit Zitat antworten Zitat
Benutzerbild von Shaman
Shaman

Registriert seit: 2. Nov 2003
Ort: Schweiz
407 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: Zeilenumbruch der Caption von TabSheet's

  Alt 6. Jan 2005, 10:44
Hoi

Also wenn überhaupt, muss es #13#10 heissen...

Gruss
Shaman
Daniel Pauli
Looking for answers from the great beyond
  Mit Zitat antworten Zitat
Alex_ITA01

Registriert seit: 22. Sep 2003
1.115 Beiträge
 
Delphi 12 Athens
 
#3

Re: Zeilenumbruch der Caption von TabSheet's

  Alt 6. Jan 2005, 10:49
danke für den Tip aber es geht auch so nicht : #13#10

Ich hoffe jemand kann mir dann helfen...
MFG Alex
Let's fetz sprach der Frosch und sprang in den Mixer
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#4

Re: Zeilenumbruch der Caption von TabSheet's

  Alt 6. Jan 2005, 10:59
Hai Alex,

da wirst Du wohl selber den Text zeichnen müssen. Hier mal ein Beispiel
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
  PageControl1.OwnerDraw := True;
  Pagecontrol1.TabHeight := 30;
end;

procedure TForm1.PageControl1DrawTab(Control: TCustomTabControl;
  TabIndex: Integer; const Rect: TRect; Active: Boolean);
const
  tab_caption : Array[0..2] of String = ('blubb # miau','hallo','foo # bar');
var
  sl : TStringList;
  ndx : Integer;
  x_pos : Integer;
  y_pos : Integer;
begin
  sl := TStringList.Create;
  try
    sl.Delimiter := '#'; // Zeichen für den "Zeilenumbruch"
    sl.DelimitedText := tab_caption[tabIndex]; // Mit der TStringList aufteilen
    x_pos := rect.left + 2; // Linke Textposition
    for ndx := 0 to Pred(sl.Count) do
    begin
      y_pos := rect.Top + 2 + ((pagecontrol1.Font.Size + 5) * ndx); //Position von oben berechnen
      PageControl1.Canvas.TextOut(x_pos,y_pos,sl.Strings[ndx]); // Text ausgeben
    end;
  finally
    sl.Free;
  end;
end;
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
6. Jan 2005, 11:01
Dieses Thema wurde von "Sharky" von "Programmieren allgemein" nach "VCL-Komponenten und Controls" verschoben.
Und ab zu VCL. Lest doch bitte mal die Beschreibung der Sparten
Alex_ITA01

Registriert seit: 22. Sep 2003
1.115 Beiträge
 
Delphi 12 Athens
 
#6

Re: Zeilenumbruch der Caption von TabSheet's

  Alt 6. Jan 2005, 11:10
sorry für die falsche Sparte...

Es gibt allerdings ein kleines Problem an dem Beispiel von dir.
Ich habe 4TabSheets und will nur im 4ten ein Text als Caption festlegen (alle anderen drei enthalten kleine Bilder...). Wenn ich OwnerDraw auf True setze sind die Bilder leider auch weg und das PageControl1DrawTab-Event wird nie ausgelöst wenn OwnerDraw nicht true ist.
Gibts da eine andere Lösung oder wie kann ich die Bilder trotzdem darstellen?

MFG Alex
Let's fetz sprach der Frosch und sprang in den Mixer
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#7

Re: Zeilenumbruch der Caption von TabSheet's

  Alt 6. Jan 2005, 11:23
Hai Alex,

Du musst halt auch die Bilder selber zeichnen

Diese Zeile sollte Dir helfen
PageControl1.Images.Draw(control.Canvas,rect.Left+1,rect.Top+5,tabindex);
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Alex_ITA01

Registriert seit: 22. Sep 2003
1.115 Beiträge
 
Delphi 12 Athens
 
#8

Re: Zeilenumbruch der Caption von TabSheet's

  Alt 6. Jan 2005, 11:31
Danke schön. Hat super geklappt

MFG Alex
Let's fetz sprach der Frosch und sprang in den Mixer
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#9

Re: Zeilenumbruch der Caption von TabSheet's

  Alt 6. Jan 2005, 11:33
Zitat von Alex_ITA01:
Danke schön. Hat super geklappt ...
Freut mich
Wenn Du aber nur auf einem Tab eine Caption ausgibst würde ich nicht mit einer StringList und einem Array arbeiten. Da reicht ja eine If-Abfrage und zwei Zeilen für das TextOut.
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Alex_ITA01

Registriert seit: 22. Sep 2003
1.115 Beiträge
 
Delphi 12 Athens
 
#10

Re: Zeilenumbruch der Caption von TabSheet's

  Alt 6. Jan 2005, 14:10
Habe ich auch schon so geändert wie du es meinst. Es ist aber immer besser, wenn man auch die "ausführliche" Variante versteht (abändern kann man schnell *g*).

MFG Alex
Let's fetz sprach der Frosch und sprang in den Mixer
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 02:15 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