Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Merkwürdiges Problem mit Manifest (https://www.delphipraxis.net/69076-merkwuerdiges-problem-mit-manifest.html)

DevilsCamp 9. Mai 2006 22:15


Merkwürdiges Problem mit Manifest
 
Liste der Anhänge anzeigen (Anzahl: 2)
Ich habe ein Programm geschrieben, dass eine Aktion zur einer bestimmten Uhrzeit oder nach Ablauf einer festgelegten Zeit ausführt.

Da ich WinXP benutze wollte ich nun die XP-Styles "einbinden". Dazu habe ich nach XP Design in Delphi Anwendungen eine Manifest-Datei in das Programm eingebunden. Allerdings habe ich nun das Problem, das Radiobuttons einen schwarzen Hintergrund bekommen (siehe Anhänge). Dies geschieht mit JEDEM Style ausser XP-Klassisch, da funktioniert es.

Sollten irgendwelche Code-Schnipsel von nöten sein, dann bitte sagen, ich poste sie dann.

Luckie 9. Mai 2006 22:26

Re: Merkwürdiges Problem mit Manifest
 
Ist das eine RadioGroup? Versuch es mal mit einer GroupBox und einzelnen RadioButtons.

DevilsCamp 9. Mai 2006 22:30

Re: Merkwürdiges Problem mit Manifest
 
Zitat:

Zitat von Luckie
Versuch es mal mit einer GroupBox und einzelnen RadioButtons.

Genauso habe ich es ja:

Delphi-Quellcode:
        hwndArray.Add('hwndGBArt', CreateWindowEx(0, 'BUTTON', 'Countdown Art',
          WS_VISIBLE or
          WS_CHILD or BS_GROUPBOX, 0, 0, 110, 105, hWnd, IDC_GBART, hInstance,
          nil));

        { Art: Zeit}
        hwndArray.Add('hwndArtZeit', CreateWindowEx(0, 'BUTTON', 'Zeit',
          WS_VISIBLE or
          WS_CHILD or BS_AUTORADIOBUTTON, 5, 25, 100, 25,
          hwndArray['hwndGBArt'],
          IDC_ZEIT, hInstance, nil));

        { Art: Countdown}
        hwndArray.Add('hwndArtCountDown', CreateWindowEx(0, 'BUTTON',
          'Countdown', WS_VISIBLE or
          WS_CHILD or BS_AUTORADIOBUTTON, 5, 60, 100, 25,
          hwndArray['hwndGBArt'],
          IDC_COUNTD, hInstance, nil));
(Die Klasse hwndArray verwaltet alle Handels im Programm, so brauche ich nicht für jedes neue Control eine neue Variable anlegen)

turboPASCAL 10. Mai 2006 12:26

Re: Merkwürdiges Problem mit Manifest
 
Mal darüber nachgedacht, Windows hat warscheinlich Probleme damit das passende Fensterhandle eines Controls zu ermittel und dann im XP-Style neu zu zeichnen.
Möglicherweise übergibt Win intern ein neues Handle an das Control (?).
Verwende einfach mal eine globale Variable für das Fenster und die Controls darauf.

DevilsCamp 10. Mai 2006 12:35

Re: Merkwürdiges Problem mit Manifest
 
hmm, aber weshalb sollte Windows dabei Probleme haben?
Ich benutze ja CreateWindowEx und es sollte keinen Unterschied machen ob ich die Rückgabe nun in eine Variable oder in ein Array speicher...

Tyrael Y. 23. Mai 2006 15:22

Re: Merkwürdiges Problem mit Manifest
 
...da es nicht hier steht, ob das Problem noch besteht

...einfach die Property "ParentBackground" des problematischen Controls in der IDE auf True setzen und wieder auf False, dann speichern, sollte danach gehen....ist ein Bug den man so umgehen kann


mfg

Tyrael

Luckie 23. Mai 2006 15:24

Re: Merkwürdiges Problem mit Manifest
 
Ich glaube kaum, dass dies bei nonVCL Anwendungen geht. ;)

DevilsCamp 23. Mai 2006 15:25

Re: Merkwürdiges Problem mit Manifest
 
Zitat:

Zitat von Tyrael Y.
...da es nicht hier steht, ob das Problem noch besteht

...einfach die Property "ParentBackground" des problematischen Controls in der IDE auf True setzen und wieder auf False, dann speichern, sollte danach gehen....ist ein Bug den man so umgehen kann


mfg

Tyrael

Also
1. Ja, das Problem besteht noch,
2. Ich benutze keine einzige Komponente. Das Programm ist nur mit der Win-API geschrieben (sonst wäre der Thread in einem anderem Bereich des Forums ;) )

Luckie 23. Mai 2006 15:28

Re: Merkwürdiges Problem mit Manifest
 
Häng das Programm mal hier an. Das will ich mir mal näher angucken.

DevilsCamp 23. Mai 2006 15:34

Re: Merkwürdiges Problem mit Manifest
 
Willst du SC oder das Reptil?


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:24 Uhr.
Seite 1 von 2  1 2      

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