AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Paint Message abfangen/Herkunft finden

Ein Thema von ConnorMcLeod · begonnen am 3. Apr 2011 · letzter Beitrag vom 4. Apr 2011
Antwort Antwort
Benutzerbild von Uwe Raabe
Uwe Raabe

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

AW: Paint Message abfangen/Herkunft finden

  Alt 3. Apr 2011, 22:13
Selbst wenn du jetzt herausfindest, was das Paint auslöst, hilft dir das nicht viel weiter. Es gibt die unterschiedlichsten Auslöser für ein Paint-Ereignis auf die du überhaupt keinen Einfluss hast. Pack das Problem an der Wurzel und mach die Paint-Methode so, daß sie immer und überall funktioniert. Nur so meine Meinung...
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von sx2008
sx2008

Registriert seit: 16. Feb 2008
Ort: Baden-Württemberg
2.332 Beiträge
 
Delphi 2007 Professional
 
#2

AW: Paint Message abfangen/Herkunft finden

  Alt 4. Apr 2011, 01:25
Pack das Problem an der Wurzel...
Richtig! Beim Programmieren rächt sich schlampiges Arbeiten fast immer.
Deshalb nie murksen, sondern immer den sauberen Weg gehen!
... möchte aber z.Zt. nichts an dem geerbten Code ändern.
Betrachte es als Verbesserung deiner Fähigkeiten als Programmierer.
Refakturieren und schlechten Code verbessern sollte man häufig üben.

Geändert von sx2008 ( 4. Apr 2011 um 02:33 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von ConnorMcLeod
ConnorMcLeod

Registriert seit: 13. Okt 2010
Ort: Bayern
490 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: Paint Message abfangen/Herkunft finden

  Alt 4. Apr 2011, 06:50
Hallo Leute,

auch, wenn ich völlig Eurer Meinung bin. Das geht zur Zeit nicht! Es hängt zuviel davon ab, dass es eine zeitlang noch so weiter funktioniert. Am Redesign arbeite ich parallel, und zwar radikal, aber die Umstellung ist erst in ein paar Monaten möglich. Bis dahin muss ich das Ding am Leben erhalten.

Ich habe gefragt, wie schaffe ich *X* und bekomme als Antwort: mach lieber *Y*. Das ist zwar nett gemeint, aber keine wirkliche Hilfe.

Seit der Umstellung (von D7) auf D2010 ist Einiges anders und ein Tail davon beeinflusst scheinbar dieses Verhalten.

Meine Frage: wie kann ich feststellen, von welchem Code das Windows dazu veranlasst wird, ein WM_PAINT zu senden? Gegenbeispiel: ein Hook gibt die Mglkt, von aussen kommende Messages abzufangen. Gibt es so etwas auch für die umgekehrte Richtung?

Trotzdem Danke für Eure Mühe und Zeit,
Wolfgang
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#4

AW: Paint Message abfangen/Herkunft finden

  Alt 4. Apr 2011, 07:04
Die Antwort ist AFAIK einfach nein...
Ob sich Da eine Dialog drübergelegt hatte, ein Resize irgendwo stattgefunden hat, eine der Komponenten ein Paint angefordert hat ...
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: Paint Message abfangen/Herkunft finden

  Alt 4. Apr 2011, 08:39
So schwer sollte eine schnelle Änderung nicht sein.
- an der Stelle, wo gezeichnet wird, leitest du alles in ein Bitmap.Canvas um
- ans Ende der Zeichenroutine(n) hängst du noch ein Repaint deiner Anzeige
- ins WM_PAINT/OnRepaint kommt nun nur noch das Ausgeben dieses Bitmaps rein und fertig
= Problem beseitigt und ein mehrfaches Repaint stört nicht mehr, bzw. kaum noch
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
shmia

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

AW: Paint Message abfangen/Herkunft finden

  Alt 4. Apr 2011, 16:57
Ich habe gefragt, wie schaffe ich *X* und bekomme als Antwort: mach lieber *Y*. Das ist zwar nett gemeint, aber keine wirkliche Hilfe.
Doch, das ist eine echte Hilfe; du sperrst Dich nur dagegen.
Hier im Forum gibt es zusammengenommen hunderte Mannjahre an Erfahrung mit Softwareentwicklung.
Wenn dir also mehrfach ein Rat gegeben wird, denn du eigentlich nicht hören möchtest, dann sollte bei Dir ein Umdenkprozess einsetzen.

Beispiel:
Das Bodenblech deines Autos ist auf der Beifahrerseite stark angerostet und hat Löcher.
Du möchtest Unterbodenschutz draufmachen, weil du im Moment wenig Geld&Zeit hast.
TÜV-Prüfer sagt: "neues Blech einschweisen" und Werkstattmeister sagt das Gleiche und selbst dein Kumpel meint "da muss ein neues Blech rein".
Würdest Du jeweils antworten "das bringt mir aber nichts, ich will nur wissen welchen Unterbodenschutz ist draufmachen soll"??
Andreas
  Mit Zitat antworten Zitat
Teekeks

Registriert seit: 19. Okt 2008
Ort: Dresden
765 Beiträge
 
FreePascal / Lazarus
 
#7

AW: Paint Message abfangen/Herkunft finden

  Alt 4. Apr 2011, 17:07
Ich habe gefragt, wie schaffe ich *X* und bekomme als Antwort: mach lieber *Y*. Das ist zwar nett gemeint, aber keine wirkliche Hilfe.
Doch, das ist eine echte Hilfe; du sperrst Dich nur dagegen.
Hier im Forum gibt es zusammengenommen hunderte Mannjahre an Erfahrung mit Softwareentwicklung.
Wenn dir also mehrfach ein Rat gegeben wird, denn du eigentlich nicht hören möchtest, dann sollte bei Dir ein Umdenkprozess einsetzen.

Beispiel:
Das Bodenblech deines Autos ist auf der Beifahrerseite stark angerostet und hat Löcher.
Du möchtest Unterbodenschutz draufmachen, weil du im Moment wenig Geld&Zeit hast.
TÜV-Prüfer sagt: "neues Blech einschweisen" und Werkstattmeister sagt das Gleiche und selbst dein Kumpel meint "da muss ein neues Blech rein".
Würdest Du jeweils antworten "das bringt mir aber nichts, ich will nur wissen welchen Unterbodenschutz ist draufmachen soll"??
*Hust*
Er hat doch bereits auf Seite 1 die gründe genannt warum es momentan nicht möglich ist.
Er sucht halt nach einer dreckigen Zwischenlösung bis der Rest auch fertig geschrieben ist.
IMHO ist das OK.
Peter
"Div by zero Error" oder auch: "Es geht auch ohne Signatur!".
  Mit Zitat antworten Zitat
Benutzerbild von ConnorMcLeod
ConnorMcLeod

Registriert seit: 13. Okt 2010
Ort: Bayern
490 Beiträge
 
Delphi 10.4 Sydney
 
#8

AW: Paint Message abfangen/Herkunft finden

  Alt 4. Apr 2011, 17:21
Sagen wir mal so...

Ich habe eine Rikscha geerbt, auf der ein 3er-Chassis draufsitzt und die Verbindungs-Schrauben werden immer lockerer.
Während ich in der Werkstatt daneben den A6 fertige, muss die Rikscha noch durchhalten und ich schweisse einstweilen ein paar Ersatzschrauben

Nix gegen Rikschas!

Erstens ist mit Redesign da nichts zu machen. Wegwerfen ist das richtige Wort.
Zweitens ist die Zeit dafür zu schade.

Egal, mit der Datenbank bin ich scheinbar auf dem richtigen Weg. Danke nochmal an alle, ich denke, wir können an dieser Stelle schlussmachen.
Lg Wolfgang
  Mit Zitat antworten Zitat
Antwort Antwort


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 07:06 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 by Thomas Breitkreuz