Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Fr Jul 04, 2025 12:46

Foren-Übersicht » Programmierung » Allgemein
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 4 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Eigene Paint-Funktionen
BeitragVerfasst: Do Feb 20, 2003 18:55 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Okt 26, 2002 17:14
Beiträge: 188
Wohnort: Hannover/Lüneburg
Hallo!

Ich hänge hier jetzt schon länger an nem Problem mit ner eigenen Komponente(n):
Ich hab mir ne Komponente von TCustomControl abgeleitet. Diese soll erstmal nur einen Button darstellen, was soweit auch alles funktioniert. Habe dazu das CreateParams überschrieben und ne eigene Paint-Methode erstellt. Mit dieser Kompo kann ich jetzt beliebig geformet Buttons darstellen, funktioniert auch ziemlich perfekt.
Das Problem liegt jetzt im nächsten Schritt. Ich wollte mir jetzt damit eine Komponente machen, die einen Regler darstellt. Dazu hab ich wieder eine von TCustomControl wie oben abgeleitet und der Button des Reglers ist der oben erstellte Button. Funktioniert soweit, aber wenn der Button nun verschoben wird, wird die Reglerkomponente, die diesen enthält grau :( Dies ändert sich erst, wenn das Fenster durch Windows neu gezeichnet wird (nach einem minimieren z. Bsp.). Ich selber bekomme das nicht hin. Wenn ich das ganze Fenster mit Form1.Refresh; aktualisieren lasse, wird zwar die Reglerkomponente richtig gezeichnet, aber alle anderen Buttons verschwinden (also die eigenen, keine TButtons oder so). Und ich hab da echt keinen Schimmer mehr wieso :(

Wer mal das ganze sehen möchte: <a href='http://www.xxlsoft.com/Downloads/Beta/Thunderplayer_NG.zip' target='_blank'>http://www.xxlsoft.com/Downloads/Beta/Thun...erplayer_NG.zip</a> (ca 650kb)
Den Source-Code der beiden Komponenten habe ich mal hier zusammengefasst: <a href='http://www.xxlsoft.com/Downloads/Beta/SkinButtons.txt' target='_blank'>http://www.xxlsoft.com/Downloads/Beta/SkinButtons.txt</a>

_________________
Thunderman
Bei schwierigen Problemen entscheiden wir uns einfach für die richtige Lösung. Klar?


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Feb 21, 2003 11:59 
Offline
DGL Member
Benutzeravatar

Registriert: Do Dez 05, 2002 10:35
Beiträge: 4234
Wohnort: Dortmund
Hi,

nichts für ungut. Aber wo ist denn deine zickige Komponente? Es wäre schön, wenn man diese mal in "aktion" sehen könnte.

Aber ich schließe mal darauf, dass die Reglerkomponente kein Update bekommt. Du solltest abfragen, wenn der Button verschoben wird und dann die Reglerkomponente neu zeichnen.

Das wird aber mit hoher wahrscheinlichkeit Flackern. Es wäre von daher also besser, dass du dieses Verschieben (den Button) in der Reglerkomponente selber zeichnest.

Genaus könnte ich aber erst sagen, wenn ich die Komponente mal gesehen habe. Da reicht ja auch ein leeres Formular auf der sie sich befindet.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Feb 21, 2003 16:15 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Okt 26, 2002 17:14
Beiträge: 188
Wohnort: Hannover/Lüneburg
Öh, die ist doch da zu sehen in dem Thunderplayer NG, oder nicht?
Da sind oben 2 Buttons und unten der Button ist der Regler, den man verschieben kann. Ich hab auch schon mit Update und Refresh gespilt, aber das nicht wirklich sauber hinbekommen, wo das hin muss. Entweder flackert es total, oder es bleibt grau. Ich glaube ein Refresh des ganzen Fensters hat etwas gebracht, nur das hat dann geflackert, und die oberen beiden Buttons waren weg :-(
Wenn ihr so nichts findet, stelle ich morgen wohl nochmal nen simples Beispielprogramm online samt Quellcode, damit ihr mal genauer probieren könnt. Aber Quellcode der Kompo und Beispielanwendung sollten eigentlich die beiden Downloads aus meinem 1. Posting sein.

_________________
Thunderman
Bei schwierigen Problemen entscheiden wir uns einfach für die richtige Lösung. Klar?


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Feb 22, 2003 17:22 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Okt 26, 2002 17:14
Beiträge: 188
Wohnort: Hannover/Lüneburg
Habe jetzt das Problem gelöst: :D
Es lag an meiner von TForm abgeleiteten Komponente. Diese hat die Paint-Procedure überschrieben und auch richtig gezeichnet. Aber in diser darf kein inherited stehen, dann werden die untergeordneten Komponenten auf der Form nämlich nicht mehr gezeichnet.

_________________
Thunderman
Bei schwierigen Problemen entscheiden wir uns einfach für die richtige Lösung. Klar?


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 4 Beiträge ] 
Foren-Übersicht » Programmierung » Allgemein


Wer ist online?

Mitglieder in diesem Forum: Majestic-12 [Bot] und 4 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
cron
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.010s | 18 Queries | GZIP : On ]