Komponenten innerhalb Groupbox sind nicht sichtbar

Rund um die LCL und andere Komponenten
dj_leinad
Beiträge: 33
Registriert: Sa 1. Okt 2022, 05:27
OS, Lazarus, FPC: Win10 pro (Laz 3.2 / FPC 3.2.2)
CPU-Target: Win 64Bit
Wohnort: CH

Komponenten innerhalb Groupbox sind nicht sichtbar

Beitrag von dj_leinad »

Es kommt manchmal vor, dass Komponenten die sich innerhalb einer GroupBox befinden, nicht mehr sichtbar sind. Erst wenn ich das entsprechende Window minimiere und wieder normal anzeige sind die entsprechenden Komponenten wieder sichtbar. Zuerst dachte ich es könnte an den Display-Treiber liegen, ein Update hat jedoch nichts verändert, immer noch das gleiche Problem.

Entsprechende Test's habe ich unter Win8.1 pro und Win11 home mit den Lazarus Releases 2.2.4 / fixes / main durchgeführt. Immer mit dem gleichen Resultat.

Der Fehler ist mit folgenden Steps reproduzierbar:

Variante 1
1. Click auf GroupBox Titel oder eine freie Stelle innerhalb der GroupBox
2. Click auf eine freie Stelle auf der Taskbar.

Variante 2
1. Click auf GroupBox Titel oder eine freie Stelle innerhalb der GroupBox
2. Minimieren einer im Hintergrund laufenden Applikation ( zb. Lazarus ).

Hierbei muss ich anmerken, dass es manchmal erst nach mehrmaligem wiederholen von Step 1 und Step 2 auftritt.

Richtig
Richtig
GroupBox-Pict01.PNG (13.01 KiB) 1299 mal betrachtet
Falsch
Falsch
GroupBox-Pict02_w_issue.PNG (9.52 KiB) 1299 mal betrachtet
Dateianhänge
project1.zip
Test Projekt
(139.58 KiB) 48-mal heruntergeladen
Erfahrung heißt gar nichts. Man kann eine Sache auch 35 Jahre schlecht machen.

charlytango
Beiträge: 843
Registriert: Sa 12. Sep 2015, 12:10
OS, Lazarus, FPC: Laz stable (2.2.6, 3.x)
CPU-Target: Win 32/64, Linux64
Wohnort: Wien

Re: Komponenten innerhalb Groupbox sind nicht sichtbar

Beitrag von charlytango »

kann das beschriebene Verhalten nicht nachvollziehen.
keinerlei Unregelmäßigkeit.,

Lazarus 2.4 stable/Win10

Vielleicht ein blöder Tip den du sicher schon gemacht hast:
lib-Verzeichnis löschen, neu kompilieren?

dj_leinad
Beiträge: 33
Registriert: Sa 1. Okt 2022, 05:27
OS, Lazarus, FPC: Win10 pro (Laz 3.2 / FPC 3.2.2)
CPU-Target: Win 64Bit
Wohnort: CH

Re: Komponenten innerhalb Groupbox sind nicht sichtbar

Beitrag von dj_leinad »

@charlytango
Komisch, ich kann das von mir beschriebene verhalten sogar in der IDE selber auslösen.

Tools --> Options --> Form Editor --> Click in die 'Misc.box --> Click auf Taskbar, dann werden die Komponenten nicht mehr angezeigt.

lib habe ich vorgängig bei meinen Test's gelöscht. Um sicherzugehen habe ich sogar die IDE neu (Clean) erstellt.

Gruss Dani
Erfahrung heißt gar nichts. Man kann eine Sache auch 35 Jahre schlecht machen.

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6209
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:

Re: Komponenten innerhalb Groupbox sind nicht sichtbar

Beitrag von af0815 »

Mal in der Objektinspektoransicht kontrollieren, wo die Komponenten wirklich in der Hierachie hängen. Vorher und nachher, wenn sie 'verschwunden' sind. Nicht das die 'unter' der Groupbox versteckt sind.

Laut dem lfm ist das im Beispiel in Ordnung. Kannst du das Beispiel anhängen, wenn es defekt ist.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

dj_leinad
Beiträge: 33
Registriert: Sa 1. Okt 2022, 05:27
OS, Lazarus, FPC: Win10 pro (Laz 3.2 / FPC 3.2.2)
CPU-Target: Win 64Bit
Wohnort: CH

Re: Komponenten innerhalb Groupbox sind nicht sichtbar

Beitrag von dj_leinad »

@af0815
Das Problem tritt nur auf wenn das Programm läuft. Im OI wird das immer richtig angezeigt. Habe auch schon die Hirarchie im lfm-File kontrolliert.

Interessant ist, dass wenn ich das Problem in der IDE auslöse und anschliessend mit dem Cursor ueber die nicht angezeigten Komponenten fahre, diese wieder angezeigt werden.

Sieht fast danach aus, dass die GroupBox ein Problem mit dem neuzeichnen der Komponenten hat.
Erfahrung heißt gar nichts. Man kann eine Sache auch 35 Jahre schlecht machen.

Soner
Beiträge: 623
Registriert: Do 27. Sep 2012, 00:07
OS, Lazarus, FPC: Win10Pro-64Bit, Immer letzte Lazarus Release mit SVN-Fixes
CPU-Target: x86_64-win64
Wohnort: Hamburg

Re: Komponenten innerhalb Groupbox sind nicht sichtbar

Beitrag von Soner »

Ich kenne diesen Effekt bzw. den Fehler. Es tauchte bei einer meiner Programme auf, es war mit Delphi entwickelt. Ich konnte mit meinem Programm es nicht heute erzeugen aber mit dein Programm konnte ich den Fehler wieder sehen, jetzt mit Windows 10 Pro damals mit Windows 7 Pro.
Siehe Bild 1
Bild 1
Bild 1
groupbox.png (5.29 KiB) 1209 mal betrachtet
wenn man mit Maus draüber bewegt erscheinen die Steuerelemente, siehe Bild 2.
Der Dateianhang groupbox.png existiert nicht mehr.
Öffnet viele Fenster miniert und aktiviert Fenster wahllos, nach vorne bringen, nach hinten bringen usw. dann erscheint es auch bei euch. Bei mir Firefox, Notepad ++, Explorer und einige Fenster aktiv. Öffnet alle Browser.
Es hat mit Groupbox von Win32 zu tun, weil ich es mit Delphi hatte.
Dateianhänge
Bild 2
Bild 2
groupbox2.png (5.68 KiB) 1209 mal betrachtet

Soner
Beiträge: 623
Registriert: Do 27. Sep 2012, 00:07
OS, Lazarus, FPC: Win10Pro-64Bit, Immer letzte Lazarus Release mit SVN-Fixes
CPU-Target: x86_64-win64
Wohnort: Hamburg

Re: Komponenten innerhalb Groupbox sind nicht sichtbar

Beitrag von Soner »

Mein Rat an dich ist, verzichte Groupbox. Es sieht hässlich aus. Die Linie ist oben in der Mitte und an anderen Ecken am äußeren Rand. Richte ein Paar Groupboxen und Panels alTop, alLeft oder alClient aus dann weißt du was ich meine. Ich verwende nur Panels.

Benutzeravatar
h-elsner
Lazarusforum e. V.
Beiträge: 259
Registriert: Di 24. Jul 2012, 15:42
OS, Lazarus, FPC: LINUX Mint21.1, Win10, Lazarus 2.2.4, FPC3.2.2
CPU-Target: X86-64; arm 32bit
Wohnort: Illertissen
Kontaktdaten:

Re: Komponenten innerhalb Groupbox sind nicht sichtbar

Beitrag von h-elsner »

Ich kann mich erinnern, dass ich dieses Problem auch schon mal hatte. Ich glaube die Lösung war, LINUX auf dem PC zu installieren.

Aber mal im Ernst: Das betriebssystem hat keine Lust die Steuerelement zu zeichnen. Wenn man mit der Maus drüberfährt, zeichnet es dann. Ich kann den Fehler hier mit Win10 nachstellen.
Grund ist, dass DoubleBuffered auf true steht. Wenn für die GroupBox DoubleBuffered false ist, tritt das Problem nicht mehr auf (zumindest bei mir).

Ich liebe Group Boxen. Man kann Steuerelemente schon Gruppieren und eine Kategorisierung als Caption vergeben. Ich finde das schön, gute Benutzerführung.

Gruß HE

dj_leinad
Beiträge: 33
Registriert: Sa 1. Okt 2022, 05:27
OS, Lazarus, FPC: Win10 pro (Laz 3.2 / FPC 3.2.2)
CPU-Target: Win 64Bit
Wohnort: CH

Re: Komponenten innerhalb Groupbox sind nicht sichtbar

Beitrag von dj_leinad »

Danke für Euer Feedback

Da in der Lazarus-IDE in den Einstellungen relativ viel mit Groupboxen gearbeitet wurde, habe ich da mal die eine und andere Groupbox mit entsprechenden Optionen getestet. Das beschriebene Problem kann überall wo groupboxen verwendet wurden festgestellt werden.
Erfahrung heißt gar nichts. Man kann eine Sache auch 35 Jahre schlecht machen.

wp_xyz
Beiträge: 4889
Registriert: Fr 8. Apr 2011, 09:01

Re: Komponenten innerhalb Groupbox sind nicht sichtbar

Beitrag von wp_xyz »

Das Problem wurde vor kurzem im internationalen Forum diskutiert (https://forum.lazarus.freepascal.org/in ... 011.0.html). Es gab mehrere Vorschläge zur Behebung, die aber allesamt Nebeneffekte hatten. Bisher ist die Sache meines Wissens noch ungelöst.

Aber ehrlich: Wer klickt schon auf eine leere Stelle in einer Groupbox und dann auf eine leere Stelle in der Taskbar? :)

Frank Ranis
Beiträge: 201
Registriert: Do 24. Jan 2013, 21:22

Re: Komponenten innerhalb Groupbox sind nicht sichtbar

Beitrag von Frank Ranis »

Hallo dj_leinad ,

so etwas ähnliches hatten wir doch schon mal.

Damals ging es um die Tlistbox , die nach einem Update von Laz von 1.4.0 auf 1.4.2 , die Texte nicht mehr richtig dargestellt hat.
Das betraf sowohl die geschriebenen Programme als auch die IDE selber .

Siehe Beitrag : viewtopic.php?f=19&t=9058

Auch hier wurden die Darstellungen wieder sichtbar , wenn man mit der Maus über die Komponente gestrichen hat.

Es war ein BUG im Laz , der dann in der Laz 1.4.4 wieder behoben war .

Ich habe eben mal dein Testprog ausprobiert (unter Lazarus 2.2.0 (rev lazarus_2_2_0-0-g4d49533f10) FPC 3.2.2 x86_64-win64-win32/win64 ) .

Alles gut , funzt sauber .

Habe in deiner Personen-Info gesehen , das Du aktuell Laz 2.2.4 / FPC 3.2.2 verwendest .

Installier dir doch bitte mal eine Laz-Vorgänger-Version (per fpcupdeluxe in einen gesonderten Ordner) und probier dann dein Demo noch mal aus.

Ist dort dann alles gut , haben wir erneut einen BUG in der Laz 2.2.4 .

Gruß

Frank
www.flz-vortex.de

siro
Beiträge: 732
Registriert: Di 23. Aug 2016, 14:25
OS, Lazarus, FPC: Windows 11
CPU-Target: 64Bit
Wohnort: Berlin

Re: Komponenten innerhalb Groupbox sind nicht sichtbar

Beitrag von siro »

Moin,

ich kann das Problem auch nachvollziehen

und ebenso bestätigen wie h-elsner
steht DoubleBuffered der GroupBox auf FALSE ist das Problem bei mir auch behoben.

Lazarus 2.2.0 (rev lazarus_2_2_0) FPC 3.2.2 x86_64-win64-win32/win64
Grüße von Siro
Bevor ich "C" ertragen muß, nehm ich lieber Lazarus...

dj_leinad
Beiträge: 33
Registriert: Sa 1. Okt 2022, 05:27
OS, Lazarus, FPC: Win10 pro (Laz 3.2 / FPC 3.2.2)
CPU-Target: Win 64Bit
Wohnort: CH

Re: Komponenten innerhalb Groupbox sind nicht sichtbar

Beitrag von dj_leinad »

@wp_xyz
Danke für den Link, ja das beschreibt genau das festgestellte Problem der Groupbox. Ich werde den dort aufgeführten Fix mal bei meiner Laz-IInstallation installieren. Mal sehen wie sich das dann verhält.

Apropos zu Deiner Frage:
Aber ehrlich: Wer klickt schon auf eine leere Stelle in einer Groupbox und dann auf eine leere Stelle in der Taskbar? :)

Hier meine kurze Antwort:
Ich. :) :) :) :) :) :) :)

Das verrückte an der ganzen Sache ist eigentlich, dass ich das Problem als erstes im TotalCommander festgestellt habe. Da hat der Dialog dann so ausgesehen (siehe folgende SC's). Da ich wusste dass TC mit FPC/LAZ entwickelt wurde, habe ich angefangen ein kleines Test-Projekt aufzubauen, und zu testen. Daraus ist dann dieser Thread entstanden.
Dateianhänge
TC mit Fehler
TC mit Fehler
TC-Issue.PNG (75.61 KiB) 1065 mal betrachtet
TC ohne Fehler
TC ohne Fehler
TC-normal.PNG (45.91 KiB) 1065 mal betrachtet
Erfahrung heißt gar nichts. Man kann eine Sache auch 35 Jahre schlecht machen.

Benutzeravatar
KodeZwerg
Beiträge: 94
Registriert: Mo 6. Feb 2023, 11:04

Re: Komponenten innerhalb Groupbox sind nicht sichtbar

Beitrag von KodeZwerg »

dj_leinad hat geschrieben:
Fr 17. Feb 2023, 10:08
Da ich wusste dass TC mit FPC/LAZ entwickelt wurde
Öhm... TotalCommander wurde schon immer mit Delphi entwickelt.
Zuletzt geändert von KodeZwerg am Sa 39. Okt 6043, 29:87, insgesamt 43-mal geändert.

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6209
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:

Re: Komponenten innerhalb Groupbox sind nicht sichtbar

Beitrag von af0815 »

Reden wir da vom TotalCommander (TC=Shareware not Source, Delphi, nur Windows) oder DoubleCommander (DC=Open Source Lazarus, Win und Linux )

DC: https://github.com/doublecmd/doublecmd
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Antworten