Canvas TextOut verschwindet bei Fenster Maximieren

Für alles, was in den übrigen Lazarusthemen keinen Platz, aber mit Lazarus zutun hat.
Antworten
EugenE
Beiträge: 440
Registriert: So 10. Dez 2006, 14:59
OS, Lazarus, FPC: MacOSX Lion 10.7 (L 0.9.31 FPC 2.7.1)
CPU-Target: 64Bit
Kontaktdaten:

Canvas TextOut verschwindet bei Fenster Maximieren

Beitrag von EugenE »

Hey Leute

immer wenn ich das Fenster verschiebe , zB unter die taskleise so das das Canvas feld kurz verschwindet und es dann wieder wieder hervorhole , ist der Text verschwunden

das selbe beim Maximieren/Minimieren

ist das ein Bug oder fehlt irgendeine einstellung bei canvas dass der text da bleibt?

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6208
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Beitrag von af0815 »

Die Frage ist, wie der Text auf den Canvas gekommen ist.

Generell wird nach den beschriebenen Vorgängen der Canvas neu gezeichnet. -> paint routine <- diese muss sich um den Inhalt des Canvas kümmern. Also dein schreiben sollte dort erfolgen, oder innerhalb von paint muß auf deine Routine verwiesen werden (Achtung auf Schleifen).
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

EugenE
Beiträge: 440
Registriert: So 10. Dez 2006, 14:59
OS, Lazarus, FPC: MacOSX Lion 10.7 (L 0.9.31 FPC 2.7.1)
CPU-Target: 64Bit
Kontaktdaten:

Beitrag von EugenE »

Jo Stimmt habe den text in die paint routine reingepackt und jetzt geht es , dankeschön ;)

monta
Lazarusforum e. V.
Beiträge: 2809
Registriert: Sa 9. Sep 2006, 18:05
OS, Lazarus, FPC: Linux (L trunk FPC trunk)
CPU-Target: 64Bit
Wohnort: Dresden
Kontaktdaten:

Beitrag von monta »

Alternativ wäre es auch möglich, auf das Canvas eines TImage zu zeichnen, dieses Speichert das Canvas und stellt es anschließend wieder her.

Euklid
Lazarusforum e. V.
Beiträge: 2808
Registriert: Fr 22. Sep 2006, 10:38
OS, Lazarus, FPC: Lazarus v2.0.10, FPC 3.2.0
Wohnort: Hessen
Kontaktdaten:

Beitrag von Euklid »

Genau, das klappt!

pluto
Lazarusforum e. V.
Beiträge: 7178
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Beitrag von pluto »

Du kannst es aber auch in einem Buffer Zeichen von Typ Tbitmap .
Dann musst du es halt "nur" bei jedem onpaint vom Buffer auf den Anzeige Canvas bringen. und du Zeichnes nur noch in diesem Buffer...

ich gehe mal davon aus das beim Maximieren und minimieren auch das onPaint Ereignis ausgelöst wird....
MFG
Michael Springwald

Antworten