AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Kontrolle über die Titelleiste eines Fensters
Thema durchsuchen
Ansicht
Themen-Optionen

Kontrolle über die Titelleiste eines Fensters

Ein Thema von mwilms · begonnen am 1. Jul 2023 · letzter Beitrag vom 2. Jul 2023
Antwort Antwort
mwilms

Registriert seit: 23. Nov 2022
Ort: Wolfratshausen
37 Beiträge
 
Delphi 10.4 Sydney
 
#1

Kontrolle über die Titelleiste eines Fensters

  Alt 1. Jul 2023, 10:45
Hallo,

weiß jemand, wie man am besten die Kontrolle über die Oberfläche eines Fensters bekommt (Inklusive Titelleiste). Gesucht wird nach einem Canvas.Bereich, der alle Elemente des Fensters abdeckt.

Vielen Dank

mWilms
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.349 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Kontrolle über die Titelleiste eines Fensters

  Alt 1. Jul 2023, 11:38
Die Komponente heißt TTitleBarPanel und die Eigenschaft des Formulars CustomTitleBar. Falls das Fenster ein TMainMenu besitzt, muss das entfernt werden.

Das funktioniert so, dass der Nonclient-Bereich entfernt wird und man nur noch einen Client-Bereich hat. Den kann man dann selbst aus der Anwendung heraus gestalten.
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.145 Beiträge
 
Delphi 12 Athens
 
#3

AW: Kontrolle über die Titelleiste eines Fensters

  Alt 1. Jul 2023, 12:38
Man kann sich zwar auch ins Zeichnen des NonClientBereiches reinhängen,
aber im Prinzip ist es mit dieser Komponente einfahcer. (die IDE nutzt das auch, siehe die ComboBoxen da oben rechts)

Nur ein paar Dinge sollte Emba verbessen, denn um die Ausrichtung mußt du dich selber kümmern und es gibt nichts, wo dir dise Komponente sagt, an welcher Stelle z.B. die SystemButtons enden.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
mwilms

Registriert seit: 23. Nov 2022
Ort: Wolfratshausen
37 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: Kontrolle über die Titelleiste eines Fensters

  Alt 1. Jul 2023, 15:34
Ok,

habe die Komponente und CustomTitleBar Eigenschaft gefunden. Kann ich nun die Titlebar entfernen und so den Clientbereich erweitern?

VG

mwilms
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.145 Beiträge
 
Delphi 12 Athens
 
#5

AW: Kontrolle über die Titelleiste eines Fensters

  Alt 1. Jul 2023, 16:05
Diese Komponente ist anfänglich etwas grauenhaft kontraintuitiv zu benutzen.

* erstmal das TTitleBarPanel auf die Form
* dann bei der Form unter CustomTitleBar.Control diese Komponente zuweisen
** * nicht erschrecken, denn plötzlich ist diese Komponente verschwunden (0 Pixel groß)
* nicht vergessen CustomTitleBar.Enabled auf True zu setzen
* sonst denkst du die ganze Zeit dieser Schrott funktioniere garnicht und bist kurz vorm Aufgeben

k.A. warum niemand auf eine geniale Idee kam-
* einfach jenes Zuweisen und Enable automatisch setzen, wenn man diese Komponente auf die Form pappt.

Und nicht wundern ... VCL-Styles kannst du vergessen, denn dann geht auch nichts mehr.



Ja, im Prinzip steht es in der Hilfe.
Das Emba-Werbevideo zu dieser Komponente weißt aber auch nicht wirklich darauf hin.

Ich sehe auch nicht, wie sie das "Menü" da drauf bekommen haben, denn TMainMenu kann/darf man auch nicht benutzen.

https://docwiki.embarcadero.com/RADS..._for_VCL_Forms
https://www.youtube.com/watch?v=tCcqu_emZlk
https://www.youtube.com/watch?v=eIt6VPNjfwk





Außerdem wird Form.StyleElements.seBorder abgeschaltet
und wenn man das TTitleBar löscht, dann bleibt Enalbed aktiv und Jenes deaktiviert.

Auch CustomTitleBar.Enabled zu aktivieren, wenn kein TTitleBar zugewiesen wurde, ergibt merkwürdige Auswirkungen.

Sowie wenn seBorder abgeschatet ist, funktioniert das vergrößern der Form nicht mehr richtig.
Einfach mal machen und im Designer das versuchen.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu ( 1. Jul 2023 um 16:55 Uhr)
  Mit Zitat antworten Zitat
TigerLilly

Registriert seit: 24. Mai 2017
Ort: Wien, Österreich
1.174 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: Kontrolle über die Titelleiste eines Fensters

  Alt 2. Jul 2023, 15:43
Gibt es aber nur mit VCL, nicht FMX, oder?
  Mit Zitat antworten Zitat
bnreimer42

Registriert seit: 26. Mai 2013
Ort: Erlangen, Franken
124 Beiträge
 
Delphi 12 Athens
 
#7

AW: Kontrolle über die Titelleiste eines Fensters

  Alt 2. Jul 2023, 16:09
Gibt es aber nur mit VCL, nicht FMX, oder?
Ja, nur für VCL.
Björn Reimer
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.145 Beiträge
 
Delphi 12 Athens
 
#8

AW: Kontrolle über die Titelleiste eines Fensters

  Alt 2. Jul 2023, 18:44
Da es im iOS sowas nicht gibt, wurde es da auch nicht eingebaut.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Antwort Antwort

 

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 10:37 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