AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

MainMenu seit 10.3 größer

Ein Thema von DieDolly · begonnen am 25. Nov 2018 · letzter Beitrag vom 14. Dez 2018
Antwort Antwort
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.687 Beiträge
 
Delphi 12 Athens
 
#1

AW: MainMenu seit 10.3 größer

  Alt 26. Nov 2018, 06:47
Nur ein Hinweis: Delphi behandelt ein Menü mit ImageList intern wie ein OwnerDraw Menü.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
DieDolly

Registriert seit: 22. Jun 2018
2.175 Beiträge
 
#2

AW: MainMenu seit 10.3 größer

  Alt 26. Nov 2018, 10:53
Weißt du, warum das beim Zuweisen von SubImages anders ist?
Dieses Verhalten war bei 10.2 noch nicht so. Entweder war es vorher falsch und ich habe davon profitiert und jetzt ist es richtig und ich spüre die Nebenwirkungen von damals oder, ich weiß nicht.

Geändert von DieDolly (26. Nov 2018 um 11:03 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.687 Beiträge
 
Delphi 12 Athens
 
#3

AW: MainMenu seit 10.3 größer

  Alt 26. Nov 2018, 11:27
Ich habe die Änderungen noch nicht im Detail analysiert, vermute aber, daß hier versehentlich die ShortCutGap (der Bereich zwischen Caption und Shortcut im dargestellten Text) auch für die Toplevel-Einträge berücksichtigt wird, obwohl die gar keinen ShortCut anzeigen. Früher wurde das bei OwnerDraw-Menüs (und dazu gehören eben auch solche mit ImageList) einfach ignoriert.

Die aktuelle Darstellung der OwnerDraw-Menüs ist zwar schon etwas besser als in 10.2, kommt aber noch nicht an das Windows-Original heran. Leider hat man meine diesbezüglichen Änderungen nicht vollständig übernommen.

Als Beispiel hier ein Standard-Menü, ein Owner-Draw aus 10.2 und eines aus 10.3 - man sieht deutlich die ShortCutGap in 10.3, aber trotzdem ist die Darstellung noch nicht perfekt.
Angehängte Grafiken
Dateityp: png Standard.png (2,4 KB, 74x aufgerufen)
Dateityp: png OwnerDraw10.2.png (2,3 KB, 70x aufgerufen)
Dateityp: png OwnerDraw10.3.png (2,3 KB, 69x aufgerufen)
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
DieDolly

Registriert seit: 22. Jun 2018
2.175 Beiträge
 
#4

AW: MainMenu seit 10.3 größer

  Alt 26. Nov 2018, 11:37
Dann lässt sich nur auf ein Update hoffen. Zeit genug deinen Code zu übernehmen war eigentlich gegeben.
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.687 Beiträge
 
Delphi 12 Athens
 
#5

AW: MainMenu seit 10.3 größer

  Alt 26. Nov 2018, 12:10
Dann lässt sich nur auf ein Update hoffen. Zeit genug deinen Code zu übernehmen war eigentlich gegeben.
Ich vermute, man hat das Problem gar nicht verstanden. Es gibt ja auch keinen QP-Eintrag dafür, den man hätte abhaken können. Die IDE selbst leidet übrigens auch daran.

Das mit der ShortCutGap im Toplevel Menü ist allerdings in der Tat ein Bug und den solltest du vielleicht auch melden. Schließlich hast du ihn auch gefunden.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von uligerhardt
uligerhardt

Registriert seit: 19. Aug 2004
Ort: Hof/Saale
1.749 Beiträge
 
Delphi 2007 Professional
 
#6

AW: MainMenu seit 10.3 größer

  Alt 26. Nov 2018, 13:13
Ich weiß nur, dass sich David Heffernan seit Jahren mit dem Thema Menüs in der VCL beschäftigt. Wenn ich ihn richtig verstanden habe, könnte man das ganze Rendering (auch mit ImageLists) mittlerweile einfach Windows überlassen und gut wär's.

Edit: Z.B. hier: https://stackoverflow.com/questions/...ible-in-delphi
Uli Gerhardt

Geändert von uligerhardt (26. Nov 2018 um 14:25 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.687 Beiträge
 
Delphi 12 Athens
 
#7

AW: MainMenu seit 10.3 größer

  Alt 26. Nov 2018, 13:36
Ich weiß nur, dass sich David Heffernan seit Jahren mit dem Thema Menüs in der VCL beschäftigt. Wenn ich ihn richtig verstanden habe, könnte man das ganze Rendering (auch mit ImageLists) mittlerweile einfach Windows überlassen und gut wär's.
Das trifft nur für Standard-Menüs mit Images zu und erfordert dazu noch spezielle Eigenschaften der Icons. Sobald aber echtes OwnerDraw ins Spiel kommt, ist das leider keine Option mehr. Es ist aber erwiesenermaßen durchaus möglich, das Windows-Verhalten nachzubilden (obwohl Microsoft sich bei der Spezifikation sehr bedeckt hält). Man muss sich nur etwas Mühe geben oder meine Änderungen einpflegen.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
3.076 Beiträge
 
Delphi 12 Athens
 
#8

AW: MainMenu seit 10.3 größer

  Alt 9. Dez 2018, 15:11
Dann lässt sich nur auf ein Update hoffen. Zeit genug deinen Code zu übernehmen war eigentlich gegeben.
Ich vermute, man hat das Problem gar nicht verstanden. Es gibt ja auch keinen QP-Eintrag dafür, den man hätte abhaken können.
Ja wenn du weiterhin keinen QP Eintrag dafür erstellst, wird's wohl auch weiterhin nicht geändert werden...
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.687 Beiträge
 
Delphi 12 Athens
 
#9

AW: MainMenu seit 10.3 größer

  Alt 9. Dez 2018, 18:05
Ja wenn du weiterhin keinen QP Eintrag dafür erstellst, wird's wohl auch weiterhin nicht geändert werden...
Na ja, das war eher ironisch gemeint, denn das Problem hatte ich mit ausreichend Beispielen und Erläuterungen und insbesondere auch einer Lösung an Embarcadero, namentlich David Millington, geschickt. Interessanterweise hat man ja das Short-Cut Gap auch übernommen - was aber nur ein Teil des Problems ist.

Aber das ist ja nun schon wieder Geschichte und die Karten werden neu gemischt. Ich werde dann mal bei nächster Gelegenheit einen entsprechenden QP-Eintrag erstellen und dann sehen wir mal, was damit passiert. Bisher scheint dieses spezielle Problem aber außer mir noch keinem aufgestoßen zu sein.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Antwort Antwort

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:44 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz