Autor |
Beitrag |
LCS
      
Beiträge: 1305
Erhaltene Danke: 1
WIN 7, WIN 8
Delphi XE5, Delphi XE, Delphi 2007
|
Verfasst: Fr 13.12.02 12:28
Hi Leute
ich hab ein merkwürdiges Programmverhalten, dass ich absolut nicht nachvollziehen kann.
Ich hab ein Hauptfenster mit zwei Panels links und rechts, die als Docksites dienen. Dazu gibts ein zweites Fenster, dass an diesen Positionen andocken kann. Auf dem zweiten Fenster wird ein Treeview dargestellt und das funktioniert alles perfekt.
Aber jetzt kommts: Ersetze ich das Treeview durch ein Memo das Text enthält (egal ob zur Laufzeit reingeschrieben oder beim Entwurf festgelegt) funktioniert nur noch der erste Dockingvorgang. Ab dem zweiten wird dann immer der Inhalt des Memos gelöscht. Einfach weg.  Und ich hab keine Idee mehr, woran's liegen könnte.
Ich hab jetzt mal alles überflüssige rausgeschmissen und alles zusammengepackt. Wer sich das mal anschauen will findet es hier. Vielleicht hat ja einer von Euch nen heissen Tip.
Ratlose Grüsse
Lothar
_________________ Der BH ist für die Brust, der Plan ist für'n Ar...
|
|
Tino
      

Beiträge: 9839
Erhaltene Danke: 45
Windows 8.1
Delphi XE4
|
Verfasst: Fr 13.12.02 12:43
Hallo,
also bei mir funktioniert es. Ich öffne das Memo-Fenster und schiebe es erst auf die linke Seite. Text ist noch vorhanden. Dann Docke ich das Fenster von links auf die rechte Seite und der Text ist immer noch vorhanden
Gruß
TINO
|
|
LCS 
      
Beiträge: 1305
Erhaltene Danke: 1
WIN 7, WIN 8
Delphi XE5, Delphi XE, Delphi 2007
|
Verfasst: Fr 13.12.02 12:49
Na, jetzt bin ich ja total baff. Ich kann das hier auf zwei Rechnern nachvollziehen. Einer mit WinXP einer mit Win98. Auf beiden das gleiche Verhalten. Allerdings sind die auch von der Hardware her identisch. Ich lass das jetzt erst mal liegen und teste das Zuhause nochmal und dann werd ich ja weiter sehen. Danke erstmal.
Gruss Lothar
_________________ Der BH ist für die Brust, der Plan ist für'n Ar...
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Fr 13.12.02 13:38
Ich kann überhaupt nichts docken. Im Gegenteil, das Subfenster scheint gänzlich unabhängig zu sein. Aktiviere ich das Hauptfenster, wird das Subfenster in den Hintergruns gesetzt. Maximiere ich das Hauptfenster, komme ich an das Subfenster gar nicht dran, da es keinen Eintrag in der Taskbar hat. Maximiere ich das Subfenster maximiert es sich auf dem ganzen Bildschirm.
Ich sehen auch gar nicht die Panels, die dem Quellcode zu urteilen da sein müßten. Stehe ich jetzt irgendwie auf dem Schlauch oder was ist da los?
Windows2000, SP2
Delphi6 Personal
|
|
LCS 
      
Beiträge: 1305
Erhaltene Danke: 1
WIN 7, WIN 8
Delphi XE5, Delphi XE, Delphi 2007
|
Verfasst: Fr 13.12.02 13:45
Hi
die Panels sind links und rechts jeweils mit einer Breite von 0. Deshalb auf den ersten Blick nicht sichtbar. Wenn du das Subfenster an den linken oder rechten Rand des Hauptfensters ziehst, solltest du allerdings das DockRect sehen.
Ich hab übrigens noch ein bisschen weiter experimentiert. Das scheint nicht nur ein Darstellungsfehler zu sein, sondern der Inhalt von dem Memo ist tatsächlich leer.
Wird ein TreeView verwendet kommt es nach ca. 10 bis 20 mal an- und abdocken zu Darstellungsfehlern, bei VirtualTree funktioniert alles bestens.
Gruss Lothar
_________________ Der BH ist für die Brust, der Plan ist für'n Ar...
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Fr 13.12.02 13:52
Ahj jetzt gehts mit etwas Geschick in den Fingern.
Ok. Bericht:
Subfenster erzeugt.
Links gedockt Text bleibt im Memo.
Rechts gedockt Text weg.
Neuen Text reingeschrieben links gedockt, Text bleibt erhalten.
Rechts gedockt, Text bleibt erhalten.
|
|
LCS 
      
Beiträge: 1305
Erhaltene Danke: 1
WIN 7, WIN 8
Delphi XE5, Delphi XE, Delphi 2007
|
Verfasst: Fr 13.12.02 13:59
Uff, und ich dachte schon ich bin vollkommen bescheuert.
Bei mir siehts allerdings so aus:
Subfenster erzeugt.
Links gedockt Text bleibt im Memo.
Rechts gedockt Text weg.
Neuen Text reingeschrieben links gedockt, Text weg
Und von jetzt an: Jeder neue Text beim nächsten Dockvorgang weg.
D6 Pro auf Win98 und WinXP SP1
Athlon 1700
MSI-6330 mit VIA KT133A
ATI Rage 128 Pro
128MB
Gruss Lothar
_________________ Der BH ist für die Brust, der Plan ist für'n Ar...
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Fr 13.12.02 14:05
Ich glaube du hast ein Problem. Ich habe das ganze mal mit der Exe gemacht, also das Programm nicht aus der IDe gestartet:
Links gedockt, Text da.
Rechts gedockt, Text da.
Links gedockt, Text weg.
Ich habs.
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Fr 13.12.02 14:11
Ich Depp, erst schreibe ich, dass ich es rausgefundne habe und dann schicke ich das Posting ab. Sorry, war keine Absicht.
Also ich habe folgendes fetgestellt: Zieht man das Subfenster von einer Seite zur anderen ohne es los zu lassen, bleibt der Text erhalten. Läßt man es zwischendurch los und dockt es dann an, verschwindet der Text.
Allerdings eine Lösung habe ich auch nicht. Eventuell Speicher-Probleme oder das Memo wird nicht wieder richtig neugezeichnet. Keinen blassen Schimmer. Tut mir leid.
Ein Workaround wäre den Inhalt zwischen zu speichern und jedas mal neu in das Memo zu laden. Soll das ganze aber mit eienm Treeview gehen dürftest du erhebliche Performance-Einbrüche haben, je nach dem wie voll der Treeview ist.
|
|
LCS 
      
Beiträge: 1305
Erhaltene Danke: 1
WIN 7, WIN 8
Delphi XE5, Delphi XE, Delphi 2007
|
Verfasst: Fr 13.12.02 14:23
Hi
Luckie hat folgendes geschrieben: |
Also ich habe folgendes festgestellt: Zieht man das Subfenster von einer Seite zur anderen ohne es los zu lassen, bleibt der Text erhalten. Läßt man es zwischendurch los und dockt es dann an, verschwindet der Text.
|
Jau, genau zu dem Stand bin ich mittlerweile auch gekommen. Das gleiche Verhalten zeigt übrigens auch das Borland Demo DockEx.
Es ist jetzt im Moment nicht so tragisch, weil der VirtualTree, den ich im eigentlichen Projekt verwende, einwandfrei funktioniert. Aber im allgemeinen werd ich jetzt erst mal die Finger davon lassen, bis ich da mehr weiss.
Dank dir für deine Hilfe
Lothar
_________________ Der BH ist für die Brust, der Plan ist für'n Ar...
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Fr 13.12.02 14:28
Na ja, man könnte jetzt nachkucken, was der Virtual Treeview beim Docken anderst macht als das Memo.
Eventuell mal bei Borland kucken, ob da was bekannt ist, denn offensichtlich scheint es ja ein Bug in Borland-Komponennten zu sein, da es ja mit fremden geht. Frage: Ist der Virtual Treeview von TTreeview abgeleitet oder vollkommen unabhängig davon implementiert? So wie es bisher aussieht, würde ich sagen er ist _nicht_ abgeleitet.
|
|
Tino
      

Beiträge: 9839
Erhaltene Danke: 45
Windows 8.1
Delphi XE4
|
Verfasst: Fr 13.12.02 14:45
Die tVirtualTreeView ist nicht von der tTreeView abgeleitet!
|
|
Luckie
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Fr 13.12.02 14:55
Was meine Vermutung bestätigt, dass der Fehler bei Borland zu suchen ist. Also sollte man mal bei Borland kucken, ob da was bekannt ist.
|
|