AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi In einem StatusPanel erscheint die Caption eines MenuItem
Thema durchsuchen
Ansicht
Themen-Optionen

In einem StatusPanel erscheint die Caption eines MenuItem

Ein Thema von pszopp · begonnen am 28. Sep 2005 · letzter Beitrag vom 4. Feb 2010
Antwort Antwort
Seite 1 von 3  1 23      
pszopp

Registriert seit: 7. Sep 2005
Ort: Alsdorf
95 Beiträge
 
Delphi 2010 Professional
 
#1

In einem StatusPanel erscheint die Caption eines MenuItem

  Alt 28. Sep 2005, 11:02
Hallo Zusammen,

ich benutze in meinem Programm die Komponente TStatusBar.
Dabei ist bei einem Panel die Eigenschaft "Style" auf "psOwnerDraw" gesetzt.
Über das StatusBar-Event "OnDrawPanel" zeichne ich auf den Canvas der StatusBar
einen Text. Das funktioniert soweit. Wenn nun aber ein anderes Formular angezeigt
wird, oder das Hauptformular vergößert/verkleinert wird, so wird eine Caption des Hauptmenüs
in das Panel gezeichnet.

Da ich dieses Problem bei mehreren Programm habe, wollte ich fragen, ob
jemand ähnliche Probleme hat oder sogar Lösungen anbieten kann.

Viele Grüße,
pszopp
  Mit Zitat antworten Zitat
pszopp

Registriert seit: 7. Sep 2005
Ort: Alsdorf
95 Beiträge
 
Delphi 2010 Professional
 
#2

Re: In einem StatusPanel erscheint die Caption eines MenuIte

  Alt 28. Sep 2005, 15:57
Hat keiner eine Idee??
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#3

Re: In einem StatusPanel erscheint die Caption eines MenuIte

  Alt 28. Sep 2005, 16:30
Zitat von pszopp:
Über das StatusBar-Event "OnDrawPanel" zeichne ich auf den Canvas der StatusBar
einen Text.
Zeig' den Code mal her.
Andreas
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#4

Re: In einem StatusPanel erscheint die Caption eines MenuIte

  Alt 28. Sep 2005, 16:34
Wahrscheinlich eine nicht initialisierte Variable in der zufälligerweise der Fenstertitel steht.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
pszopp

Registriert seit: 7. Sep 2005
Ort: Alsdorf
95 Beiträge
 
Delphi 2010 Professional
 
#5

Re: In einem StatusPanel erscheint die Caption eines MenuIte

  Alt 28. Sep 2005, 20:27
Leider nicht:

Delphi-Quellcode:
procedure TFormMain.StatusBar1DrawPanel(StatusBar: TStatusBar;
  Panel: TStatusPanel; const Rect: TRect);
begin
  if (Panel = StatusBar1.Panels[1]) then
    StatusBar1.Canvas.TextOut(Rect.Left, Rect.Top, Panel.Text);
end;

Panel.Text wird über einen Timer alle 500 ms mit FormatDateTime beschrieben.
Das wird auch meistens angezeigt, nur halt bei einem Form,
das über dem Hauptform liegt, kommt es zu Problemen.
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.117 Beiträge
 
Delphi 11 Alexandria
 
#6

Re: In einem StatusPanel erscheint die Caption eines MenuIte

  Alt 28. Sep 2005, 21:23
Moin pszopp,

wird in der Timer-Routine zu Beginn der Timer aus-, und am Ende wieder angeschaltet?
Falls nicht könnest Du das mal ausprobieren.

Delphi-Quellcode:
Timer1.Enabled := false;
try
  // Zuweisung an Panel.Text und was hier noch so passieren soll
finally
  Timer1.Enabled := true;
end;
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

Re: In einem StatusPanel erscheint die Caption eines MenuIte

  Alt 28. Sep 2005, 21:37
Werden nicht von den MenuItems die Hints... als Statustext in der Statusbar eingetragen, wenn man über die Hints fährt?

Vielleicht ist es was in der Richtung?
$2B or not $2B
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#8

Re: In einem StatusPanel erscheint die Caption eines MenuIte

  Alt 28. Sep 2005, 23:47
Nein, das wird es auch nicht. Ich habe das gleiche Problem. Beide Panels der StatusBar die OwnerDraw sind, werden falsch gemalt. Dort erscheinen auch übereinander gemalte MainMenu Item Einträge samt Icon und ShortCut z.T. auch verstümmelt. Dieses Verhalten beobachte ich schon länger und kann es mir nicht erklären. Auch konnte ich bisher noch keinen Ansatz finden, woher dieses Verhalten stammt um einen Bug Report in der Borland Quality Central abzugeben.

Bei mir kann dieses Fehlverhalten explizit ausgelöst werden, wenn man ihr mit rüberschieben von anderen Fenstern über die betreffenden StatusBar Panels zum neuzeichnen zwingt.

Für Lösungen wäre auch ich dankbar.

Aso, nochwas: einzige Erkenntnis bisher: dieser Fehler tritt nicht unter Windows XP auf - egal ob mit Theme oder klassische Ansicht. Bei Windows 2000 vermehrt und Win9x/ME/NT konnte bisher noch nicht untersucht werden.
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.117 Beiträge
 
Delphi 11 Alexandria
 
#9

Re: In einem StatusPanel erscheint die Caption eines MenuIte

  Alt 29. Sep 2005, 01:02
Moin Thomas,

wenn Du willst kannst Du mir mal ein kleines Demoprogramm schicken.
Dann kann ich es mal unter 95 testen.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
pszopp

Registriert seit: 7. Sep 2005
Ort: Alsdorf
95 Beiträge
 
Delphi 2010 Professional
 
#10

Re: In einem StatusPanel erscheint die Caption eines MenuIte

  Alt 29. Sep 2005, 09:25
Mittlerweile funktioniert es bei mir. Leider habe ich an den betreffenden Code-Stellen nichts geändert.
Ich gehe deswegen davon aus, dass der Fehler irgendwann wieder auftritt.
Demo-Programme kann ich persönlich leider nicht verschicken, da für die Prorgamme
Runtime Bibliotheken benötigt werden.

Bis demnächst
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


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 14: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