Announcement

Collapse
No announcement yet.

Hilfe für Java-Neuling / Untergeordnete Fenster

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Hilfe für Java-Neuling / Untergeordnete Fenster

    Hallo,
    hier nun wieder ein Java-Neuling mit einer (für Euch sicherlich trivialen) Frage:
    Ich möchte mit Java eine Anwendung im Stil eines MultiDokumentInterfaces erstellen. Leider klappt das mit den untergeordneten, also ChildWindows nicht so ganz. Ich habe es zwar geschaft eine Komponente vom Typ Window mittels des Window-Konstruktors an das MainFrame zu binden, aber das Window wird nicht im Clientbereich des MainFrame angezeigt, sondern hängt in der linken oberen Ecke des Bildschirms. Kennt jemand von Euch die Lösung ???
    Ich verwende ausschliesslich AWT und keine Swing-Klassen... ist das problematisch. Was empfiehlt sich überhaupt: AWT oder Swing... und weshalb...
    Eine Menge Stoff, ich weiß, aber Java ist mir in weiten Teile noch ein großes Rätsel

    Danke für Eure Unterstützung

    Jürgen

  • #2
    Hallo Jürgen,
    d
    ie Antwort ob AWT oder Swing heißt: Das kommt darauf an ;-)

    AWT ist sicherlich performanter als Swing, hat aber den Nachteil, dass zwischen verschiedenen Browsern/Betriebssystemen deutliche Unterschiede in der Darstellung auftreten (z. B. Breite von Text), da bei AWT die grafische Darstellung von Betriebssystemfunktionen übernommen wird. Bei Swing hingegen ist Java selbst für die
    Darstellung verantwortlich. Bei Swing findest du außerdem eine größere Anzahl an Controls (z. B. Tree- oder Table-Control).

    Wenn der Rechner flott genug ist, verwende Swing. Ein MDI-Interface kannst du damit mit folgenden Klassen realisieren:

    JFrame enthält JDesktopPane enthält (viele) JInternalFrame(s) enthält JPanel

    Gruß,
    Mari

    Comment


    • #3
      Hallo Jürgen,

      um ein vernünftiges MDI zu bauen ist SWING sicher die bessere Wahl, aber wenn du die gleichen Features einbauen willst
      wie du sie von Windows MDI's gewohnt bist, dann musst du noch kräftig Hand anlegen. Am besten schaust du dir mal
      das Demo ...jfc\SwingSet2 an.Dort werden JInternalFrames demonstriert. Ich benutze das JDK 1.3, daher weiss ich nicht genau
      wie das jar in anderen Versionen heisst, jedenfallst ist es im Ordner jfc.

      Viel Spass

      Thomas Tasio

      Comment


      • #4
        Hallo und vielen Dank,
        habe inzwischen herausgefunden, daß sich eine MDI-Anwendung nur mit Swing realisieren lässt. Das wie habe ich inzwischen auch schon kapiert und realisiert. NOCH EINE FRAGE AN THOMAS: Welches Beispiel meinst Du, soll heissen: Wo finde ich das Teil ?
        Habe nämlich auch schon mitbekommen, daß zum wirklichen Windows-MDI-LookAndFeel noch einiges fehlt... und wozu das Rad neu erfinden ? ;-)
        Nochmals vielen Dank für die Hilfe !!!

        Gruss aus Hamburg

        Jürge

        Comment


        • #5
          Hallo Juergen,

          in deiner Anfrage zu Look and Feel schreibst du, du hättest JDK 1.3 drauf. Eines der Unterverzeichnisse heisst jfc.
          Also angenommen dein JDK ist so installiert:

          C:\Programme\jdk_1_3\demo\jfc\SwingSet2

          dann findest du im Ordner SwingSet2 die Datei SwingSet2.jar
          Mache darauf einen Doppelklick und ein SWING Demo wird geladen.
          Und schon befindest du dich im JInternalFrame Demo. Das Ganze hat etwas Ladezeit.
          Übrigends: Wenn du auf die Registerkarte Source Code klickst, kommst du zum Quelltext des gerade dargestellten Features. Den brauchst du nur markieren und kopieren, und schon kannst du ihn studieren und abändern.

          Solltest du das Unterverzeichnis nicht finden, dann hast du das JDK ohne Demos installiert - also nachinstallieren

          Gruss

          Thomas Tasio

          Comment


          • #6
            Hi Thomas (mein Retter in der Not ;-),
            phantastisch Deine Tips. Sag einmal: Wie lange programmierst Du schon Java, und wie lange dauerte es, bis Du Dich sicher gefühlt hast ?

            Danke nochmals

            Jürge

            Comment


            • #7
              Hallo Jürgen,

              nun ja, programmieren tu ich schon seit Anfang der 90er, zunächst Pascal, dann Borland Pascal dann Delphi alles rein hobbymässig. Das mit dem Sicher fühlen ist so eine Sache: Java entwickelt sich halt rasend schnell weiter, und Funktionalitäten
              werden durch andere Ersetzt. Ich denke nur an das Eventhandling bzw Ablösung des AWT durch SWING. Also bleibt einem nichts
              anderes übrig als sich über die Neuerungen zu informieren un das was einen interessiert bzw was man beruflich braucht muss man halt näher anschauen und sich einarbeiten

              Gruss

              Thomas Tasio

              Comment


              • #8
                Hi Leute<p></p>
                Bin ebenfalls ein java Neuling, bin 18 Jahre und hab begonnen mit Sun Toturial und Thinking in Java<b>
                Habe nun eine für Profis triviale Frage, hoffe aber trotzdem auf eure Hilfe:<p></p>
                Was bringt es wenn ich von den einzelnen Klassen der API weiß, aus welchem Packet diese stammen<b>
                zum Beispiel java.lang .object, daraus kenne ich nun zb java.lang.string,<b>
                Will ich nun die Methoden von string in einer Klasse verwenden, muss ich doch micht das gesamte Paket importieren?
                <b>
                zb class ReverseString {<b>
                public static String reverseIt (String source) {<b>
                hier verwende ich doch auch eine Methode, warum importiere ich dann nicht das gesamte Packet?<b><p></p>
                Danke im Voraus, leider beschäftige ich mich erst seit kurzer Zeit mit Jav

                Comment


                • #9
                  Hi Leute<p></p>
                  Bin ebenfalls ein java Neuling, bin 18 Jahre und hab begonnen mit Sun Toturial und Thinking in Java<b>
                  Habe nun eine für Profis triviale Frage, hoffe aber trotzdem auf eure Hilfe:<p></p>
                  Was bringt es wenn ich von den einzelnen Klassen der API weiß, aus welchem Packet diese stammen<b>
                  zum Beispiel java.lang .object, daraus kenne ich nun zb java.lang.string,<b>
                  Will ich nun die Methoden von string in einer Klasse verwenden, muss ich doch micht das gesamte Paket importieren?
                  <b>
                  zb class ReverseString {<p></p>
                  public static String reverseIt (String source) {<p></p>
                  hier verwende ich doch auch eine Methode, warum importiere ich dann nicht das gesamte Packet?<b><p></p>
                  Danke im Voraus, leider beschäftige ich mich erst seit kurzer Zeit mit Jav

                  Comment


                  • #10
                    Hi, ich bin ein richtiger Java-Anfänger und habe eine triviale Frage<br>
                    Hoffe aber, ihr könnt mir trotzdem helfen!!<p></p>
                    Was bringt es mir, wenn ich von einer Klasse den gesamten Stammbaum weiß<p></p>
                    zb:java.lang.object, daraus kenne ich jetzt die Klasse, java.lang.string, wenn ich jetzt aber eine Methode <br>
                    aus dieser Klasse verwenden möchte, muss ich doch nicht das gesamte Paket importieren.<br>
                    ich lerne java mit dem sun Tutorial, trotzdem sind mir einige Dinge noch nicht klar. <p></p>
                    class reverseString {<br>
                    public staticString <b>reverseIt</b>(String source) {
                    <br>hier verwende ich doch auch eine methode und importiere nicht gleich das ganze Paket!<br>
                    warum?<p></p>ich hoffe ihr könnt mir helfen, <b>danke im voraus</b&gt

                    Comment


                    • #11
                      Hallo Othmar,

                      weil java.lang automatisch importiert wird.

                      Thomas Tasio

                      Comment

                      Working...
                      X