Xojo Developer Conference
25/27th April 2018 in Denver.
MBS Xojo Conference
6/7th September 2018 in Munich, Germany.

AW: Fensterreihenfolge beim Neuzeichnen (Real Studio network user group Deutschland Mailinglist archive)

Back to the thread list
Previous thread: OT: Realbasic MySQL Plugin
Next thread: Cocoa in RB?


Re: Fensterreihenfolge beim Neuzeichnen   -   Dietmar Plaßmann <
  AW: Fensterreihenfolge beim Neuzeichnen   -   Christian Hahn
   Re: AW: Fensterreihenfolge beim Neuzeichnen   -   "Dietmar Plaßmann" <
   AW: Fensterreihenfolge beim Neuzeichnen   -   Christian Hahn
    Re: AW: Fensterreihenfolge beim Neuzeichnen   -   Andy Fuchs
     AW: AW: Fensterreihenfolge beim Neuzeichnen   -   Christian Hahn

AW: Fensterreihenfolge beim Neuzeichnen
Date: 21.08.07 22:30 (Tue, 21 Aug 2007 23:30:02 +0200)
From: Christian Hahn
Hallo Dietmar,
doch, es ging in der Diskussion "MDI simulieren" tatsächlich um
MultiDocumentInterface, offenbar ein Windows-only-feature, bei dem mehrere
Child-Fenster innerhalb eines Parent-Fensters gehalten werden können.
Das lässt sich auch mit RB realisieren, allerdings nur für
Windows-Compilierungen bzw. auf Windows-Rechnern (logisch).
Nun hat mein Programm also 5 einzelne Document-Fenster auf dem Bildschirm um
ich kämpfe mit diesem für mich nicht verstehbaren Phänomen.

> Würde ganz schön flimmern, oder? Wenn ein Fenster nach dem anderen
> nach vorne kommt, bis wieder die ursprüngliche Reihenfolge hergestellt
> ist.

Stimmt. Aber was könnte es sein, dass dieses eine Fenster dazu bringt, sich
immer neu zu zeichnen? Im paint-event-handler habe ich keinen Code.

bestens, Christian Hahn.

Re: AW: Fensterreihenfolge beim Neuzeichnen
Date: 22.08.07 06:44 (Wed, 22 Aug 2007 07:44:51 +0200)
From: "Dietmar Plaßmann" <
Zitat von Christian Hahn <<email address removed>>:

> doch, es ging in der Diskussion "MDI simulieren" tatsächlich um
> MultiDocumentInterface, offenbar ein Windows-only-feature, bei dem mehrere
> Child-Fenster innerhalb eines Parent-Fensters gehalten werden können.

Ach dieses lächerliche Gehabe :-) Sorry, aber wenn ich sehe, das ich
die Dokumente nur innerhalb des App-Fensters bewegen kann, die
Toolbars und Dockingwindows jedoch als FloatingWindow auf dem ganzen
Desktop verteilen kann, dann frage ich mich, was soll das? 99% der
Win-User arbeiten aber noch im Vollbildmodus und sehen das gar nicht.

Im Endeffekt sind die Bedienkonzepte zwischen Win und Mac jedoch
unterschiedlich und man sollte gar nicht erst versuchen das eine auf
den andere zu portieren.

> Stimmt. Aber was könnte es sein, dass dieses eine Fenster dazu bringt, sich
> immer neu zu zeichnen? Im paint-event-handler habe ich keinen Code.

Da wirst Du viel debuggen müssen, um heraus zu bekommen wieso das so
ist. Vielleicht setzt Du eine Variable des Fensters von anderer Stelle
aus und durch einen Bug wird es nach vorne geholt, oder oder oder. Ich
mache mit RB momentan zu wenig um dir da wirklich helfen zu können,
aber wenn ich so sehe was für Auswirkungen manche Aktionen unter VB
haben, dann halte ich alles für möglich :-)

Dietmar

Dietmar

AW: Fensterreihenfolge beim Neuzeichnen
Date: 23.08.07 20:46 (Thu, 23 Aug 2007 21:46:50 +0200)
From: Christian Hahn
Wenn ich unter diesem Betreff noch einmal auf mein ursprüngliches Problem
zurück kommen darf.
Dass ein teilweise überdecktes Fenster (Fenster1) beim Öffnen eines weiteren
Fensters (Fenster3) über das verdeckende Fenster (Fenster2) neu gezeichnet
wird, liegt offenbar daran, dass dabei das resized-Event von Fenster1
ausgelöst wird.
Alle meine Fenster haben im resized-Eventhandler eine Routine, die die Größe
der Controls der neuen Fenstergröße anpasst. Klar, dass das jeweilige
Fenster neu gezeichnet werden muss, wenn es resized wird, aber doch nicht,
weil ein anderes Fenster darüber geschoben wurde und sich ein weiteres
Fenster öffnet.
Und dann kommt noch hinzu, das alles passiert nur, wenn das sich öffnende
Fenster3 ein Floating Windows ist. Ist es ein gewöhnliches Document, ist das
ganze Problem verschwunden.
Ist das ein Bug (RB 07_2 für Windows) ?

bestens, Christian Hahn.

> -----Ursprüngliche Nachricht-----
> Von: <email address removed>
> [mailto:<email address removed>]Im Auftrag von
> Christian Hahn
> Gesendet: Dienstag, 21. August 2007 23:30
> An: <email address removed>; REALbasic NUG German
> Betreff: AW: Fensterreihenfolge beim Neuzeichnen
>
> Hallo Dietmar,
> doch, es ging in der Diskussion "MDI simulieren" tatsächlich um
> MultiDocumentInterface, offenbar ein Windows-only-feature, bei dem mehrere
> Child-Fenster innerhalb eines Parent-Fensters gehalten werden können.
> Das lässt sich auch mit RB realisieren, allerdings nur für
> Windows-Compilierungen bzw. auf Windows-Rechnern (logisch).
> Nun hat mein Programm also 5 einzelne Document-Fenster auf dem
> Bildschirm um
> ich kämpfe mit diesem für mich nicht verstehbaren Phänomen.
>
> > Würde ganz schön flimmern, oder? Wenn ein Fenster nach dem anderen
> > nach vorne kommt, bis wieder die ursprüngliche Reihenfolge hergestellt
> > ist.
>
> Stimmt. Aber was könnte es sein, dass dieses eine Fenster dazu
> bringt, sich
> immer neu zu zeichnen? Im paint-event-handler habe ich keinen Code.
>
> bestens, Christian Hahn.
>

Re: AW: Fensterreihenfolge beim Neuzeichnen
Date: 23.08.07 22:29 (Thu, 23 Aug 2007 23:29:23 +0200)
From: Andy Fuchs
at 23.08.2007 21:46 Uhr, Christian Hahn wrote:

> Alle meine Fenster haben im resized-Eventhandler eine Routine, die die Größe
> der Controls der neuen Fenstergröße anpasst. Klar, dass das jeweilige
> Fenster neu gezeichnet werden muss, wenn es resized wird, aber doch nicht,
> weil ein anderes Fenster darüber geschoben wurde und sich ein weiteres
> Fenster öffnet.
> Und dann kommt noch hinzu, das alles passiert nur, wenn das sich öffnende
> Fenster3 ein Floating Windows ist. Ist es ein gewöhnliches Document, ist das
> ganze Problem verschwunden.
> Ist das ein Bug (RB 07_2 für Windows) ?

Hi Christian,

keine Ahnung ob das ein Bug ist oder nicht - auf dem Mac hab' ich das bisher
noch nicht gesehen. Andererseits kannst Du das ja auch einfach umschiffen,
indem Du in Deinem Resized-Event prüfst, ob sich die Fenstergröße
tatsächlich geändert hat:

if (gOldWidth <> w.width OR gOldHeight <> w.height)
AdjustWindowContents...
end if

oder so.

andy