Announcement

Collapse
No announcement yet.

Steuerelemente werden zur Laufzeit falsch angezeigt

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Steuerelemente werden zur Laufzeit falsch angezeigt

    Wir arbeiten mit mehreren Delphi-Arbeitsplätzen an einem Projekt. WinXP mit Delphi 7 Ent.
    Bei einem Projekt werden seit kurzem die Steuerelemente in der Entwurfszeit im Win2000-Style angezeigt, zur Laufzeit jedoch im WinXP-Style.
    Das wäre kein Problem. Jedoch sind die Farben der Panels, Tabellenköpfe und Formularfarben auch zur Laufzeit anders als zur Entwurfszeit.
    Es lassen sich im Entw. die richtigen Farben zuweisen, zu Laufzeit sind diese Flächen alle clBtnFace.
    In den Steuerelementen werden die Farben nicht vom Parent geerbt.
    Wird ein neues (oder ein anderes) Projekt erstellt oder geöffnet, werden die Steuerelemente wieder korrekt angezeigt (Win2000-Style).

    Wo wird im Projekt registriert, welche Steuerelemente zur Laufzeit geladen werden?

  • #2
    OK! Wir haben das Projekt nocheinmal neu angelegt und alle Units neu importiert. (Sch.. Arbeit). Das Problem tritt nicht mehr auf.
    Hätte mich trotzdem interessiert wo das Problem lag.

    Comment


    • #3
      Sobald in D7 irgendwo in einer Unit des Projektes XPMan (irgendwo im Uses-Abschnitt) gezogen wird so bekommen die Anwendung ein XP-Manifest als Ressource mit so das ab XP-Systemen die Anwendung im Neuen XP-Style angezeigt wird. Das XP-Manifest hat die Eigenschaft diverse Control-Properties (wie Farbe von Panels) zu überschreiben, spich: Die Eigenschaft vom eingestellten XP-Theming gewinnt.

      Da die IDE selbst nicht gethemed ist siehst du dieses XP-Theming nicht in der IDE zur Entwurfszeit.

      Comment


      • #4
        Genau! Als wir das Projekt neu zusammengelinkt haben, ist der 'Fehler' wieder aufgetreten. Nur konnte ich nun feststellen welche Unit das Problem verursacht. Nach genauer Untersuchung der Form habe ich ein XPMan außerhalb des sichtbaren Bereiches gefunden.
        Sabotage ;-)

        Auf so ein Ding fällt man nur einmal rein.

        Schönen Dank @Bernhard

        Comment

        Working...
        X