AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi PageControl - Tabs um Schließen-Symbol erweitern

PageControl - Tabs um Schließen-Symbol erweitern

Ein Thema von Balu der Bär · begonnen am 15. Okt 2006 · letzter Beitrag vom 18. Feb 2023
Antwort Antwort
Seite 1 von 4  1 23     Letzte » 
Balu der Bär
(Gast)

n/a Beiträge
 
#1

PageControl - Tabs um Schließen-Symbol erweitern

  Alt 15. Okt 2006, 11:18
Hallo,

heute habe ich einen mehr oder minder schweren Anschlag auf euch vor. *g*

Ich benutze in meinem Programm ein TPageControl auf welchem mehrere TabSheets liegen. Jetzt hätte ich gerne, dass jeder Tab ein Schließen-Symbol ([x]) am Ende jedes Tabs hat, sodass man den Tab schließen kann (Beispiel siehe Anhang). Leider habe ich bloß keine Ahnung wie ich das mit einem PageControl hinbekomme. Ich dachte daran das Schließen Symbol mittels Canvas auf den Tabreiter zu zeichnen, klappte nach den ersten Versuchen aber auch nicht recht, da erstens jeder Tabreiter unterschiedlich groß sein kann und zweitens ich nicht wüsste wie ich auf das Klicken auf das gezeichnete Symbol reagieren sollte. Hat da jemand ne Idee wie ich das hinbekomme? Danke euch.
Miniaturansicht angehängter Grafiken
tabbedcontrol_404.png  
  Mit Zitat antworten Zitat
Daniel G
(Gast)

n/a Beiträge
 
#2

Re: PageControl - Tabs um Schließen-Symbol erweitern

  Alt 15. Okt 2006, 11:42
Evtl. könntest du diese beiden Tipps miteinander verbinden:

Herausfinden, auf welches Tab geklickt wurde (benutzt TabRect)
Bsp. für selbst gezeichneten Closebutton

Evtl. könnte man dann unter Verwendung von TabRect mit relativen Positionsangaben eine Closebutton zeichnen.

P.S.: Solltest du 'ne Lösung haben, poste sie mal bitte hier...

//Edit: Oh Gott, zweimal "Evtl."
  Mit Zitat antworten Zitat
Balu der Bär
(Gast)

n/a Beiträge
 
#3

Re: PageControl - Tabs um Schließen-Symbol erweitern

  Alt 15. Okt 2006, 11:55
Danke erstmal, mal gucken ob ich da halbwegs durchsteige.

Zitat von Daniel G:
P.S.: Solltest du 'ne Lösung haben, poste sie mal bitte hier...
  Mit Zitat antworten Zitat
Balu der Bär
(Gast)

n/a Beiträge
 
#4

Re: PageControl - Tabs um Schließen-Symbol erweitern

  Alt 15. Okt 2006, 13:20
Ich nochmal, also das Erstellen des Buttons hat mit diesem Code ja schon geklappt. Leider nur bekomme ich es einfach nicht hin den Button oben in in die Tabbeschriftung zu schreiben. In TabRect liegen zwar die Positionen des Reiters, jedoch komm ich einfach nicht drauf wie ich dort hinein zeichnen kann.

Ich glaube so langsam krieg ich es hin. *g*
  Mit Zitat antworten Zitat
Benutzerbild von DGL-luke
DGL-luke

Registriert seit: 1. Apr 2005
Ort: Bad Tölz
4.149 Beiträge
 
Delphi 2006 Professional
 
#5

Re: PageControl - Tabs um Schließen-Symbol erweitern

  Alt 15. Okt 2006, 13:29
Kommt doch nur aufs Parent des Buttons an... und dann musst du eben die Koordinaten umrechnen.
Lukas Erlacher
Suche Grafiktablett. Spenden/Gebrauchtangebote willkommen.
Gotteskrieger gesucht!
For it is the chief characteristic of the religion of science that it works. - Isaac Asimov, Foundation I, Buch 1
  Mit Zitat antworten Zitat
Balu der Bär
(Gast)

n/a Beiträge
 
#6

Re: PageControl - Tabs um Schließen-Symbol erweitern

  Alt 15. Okt 2006, 14:32
Ok, ich hatte anfangs einen kleinen Denkfehler drin, deshalb klappte es ständig nicht.

Jetzt gehts aber ungefähr so wie ich mir das gedacht habe (siehe Screenshot). Hab mal ein klitzekleines Beispiel angehangen, sollte für jeden verständlich sein. Der ganze Dank gebührt natürlich dataspider für seinen Code.
Miniaturansicht angehängter Grafiken
tabbedpagecontol1_181.png  
Angehängte Dateien
Dateityp: rar closebuttonpagecontrol_104.rar (4,4 KB, 277x aufgerufen)
  Mit Zitat antworten Zitat
API

Registriert seit: 18. Apr 2004
636 Beiträge
 
#7

Re: PageControl - Tabs um Schließen-Symbol erweitern

  Alt 29. Jun 2009, 15:43
Wie kann man bei Klick auf einen Schließen-Button benachrichtigt werden und dann das zugehörige Tab schließen?
  Mit Zitat antworten Zitat
Benutzerbild von toms
toms
(CodeLib-Manager)

Registriert seit: 10. Jun 2002
4.648 Beiträge
 
Delphi XE Professional
 
#8

Re: PageControl - Tabs um Schließen-Symbol erweitern

  Alt 29. Jun 2009, 16:13
Zitat von API:
Wie kann man bei Klick auf einen Schließen-Button benachrichtigt werden und dann das zugehörige Tab schließen?
Indem man TrwCloseButton einen OnClick/OnMouseUp Handler zuweist.
Im Anhang ein erweitertes Demo. Schöner ist es natürlich, wenn das Ganze in eine eigene Klasse verpackt wird.

Tags: PageControl, CloseButtons, Close buttons, TabSheet
Miniaturansicht angehängter Grafiken
screenshot_151.jpg  
Angehängte Dateien
Dateityp: zip pagecontrol_closebutton_demo_210.zip (253,4 KB, 271x aufgerufen)
Thomas
  Mit Zitat antworten Zitat
einfach112
(Gast)

n/a Beiträge
 
#9

Re: PageControl - Tabs um Schließen-Symbol erweitern

  Alt 2. Jul 2009, 00:34
Hi ! also ich versuche gerade das alles etwas zu erweitern und versuche während der laufzeit ein tabsheet hinzuzufügen ......
nur ich habe immer probleme....
1. Tabsheet wird hinzugefügt aber hat kein X
2. wenn ich beim erstellen des tabsheets gleichzeitig Showtabbuttons;
aufrufe
dann wird bei den Tabsheets (t1+t2+t3) jeweils ein zweites X je tabsheet gezeichner und eines auf meinem neuen tab !.....
Hat jemand ne idee wie man das ändern kann das er eventuell so wie beim schliessen eines tabs auch beim neuen erstellen eines tabs die jeweiligen tabsheets zählt und dann die Xse neu zeichnet ?! ?!

bin wie immer über hilfe sehr sehr dankbar !
mfg
einfach112
  Mit Zitat antworten Zitat
Benutzerbild von toms
toms
(CodeLib-Manager)

Registriert seit: 10. Jun 2002
4.648 Beiträge
 
Delphi XE Professional
 
#10

Re: PageControl - Tabs um Schließen-Symbol erweitern

  Alt 2. Jul 2009, 07:05
Aktualisiertes Demo im Anhang.

Neu:

* TabSheet zur Laufzeit erzeugen
* Per Kontextmenü ein Tab schließen
* Quelltext ein wenig kommentiert
Thomas
  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 15:14 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