Announcement

Collapse
No announcement yet.

Aus einem Applet heraus ein Dialogfenster erzeugen

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

  • Aus einem Applet heraus ein Dialogfenster erzeugen

    Hallo,
    (fernes) Ziel ist es, auf meiner Homepage einen Gehaltsrechner zur Verfügung zu stellen, den ich als Java-Applet implementieren möchte. Das Ergebnis (die Gehaltsabrechnung) soll in einem eigenen Applet-Fenster angezeigt werden.

    Ich bin Java-Neuling, arbeite deshalb noch mit dem JBuilder 2 von Borland :-( und verzweifele bereits an folgendem Problem: Ich habe ein kleines Testprogramm einmal als Applikation und einmal als Applet geschrieben, in dem ich den – vorgefertigten - Melde-Dialog message1 (borland.jbcl.control.message) aufrufe, den ich in der Applikations-Version mit message1.setFrame(this) und in der Applet-Version mit message1.setFrame(getParent()) initialisiere.

    In der Applikations-Version läuft alles glatt, in der Applet-Version bringt der Compiler jedoch folgende (unverständliche?) Fehlermeldung: „Methode setFrame(java.awt.Container) nicht gefunden in class borland.jbcl.contol.Message“. – Wieso, bei der Applikation wurde setFrame doch auch gefunden? Oder hängt es damit irgendwie zusammen, dass durch ein Applet geöffnetes Fenster als unsicheres Browser-Fenster gilt?

    Und wenn ja, wie lässt sich mein Problem lösen?

    Für jede Hilfe bin ich dankbar.

    Viele Grüße Wolfgang.

  • #2
    Hallo Wolfgang Heberger
    <BR><BR>
    nun, in java.awt.Container gibt es kein setFrame.
    <BR>
    Vielleicht lösst du das mit java.awt.Frame.
    <BR>Ich weiss nicht ob das aus nem Applet geht, aber Frame kann Dialoge haben...
    <BR><BR>
    Applet ist ein Panel und hat so nur eingeschränkte Möglichkeiten. Ausserdem kennen Applets nur jdk1.1
    <BR><BR><BR>mfg DEBIA

    Comment


    • #3
      Hallo DEBIAN,

      besten Dank für die Tipps. Ich habe unterdessen auch schon einen FRAME und keinen DIALOG von meinem Applet aus aufgerufen und es klappt auch, wenn ich es recht sehe.

      Zum Initialisieren eines Frame-Objekts benötige ich nicht den Container als Eigentümer dieses Frame’s. Das Dialog-Objekt will aber wissen, wer seine Eltern sind und verlangt – so ein schlaues Anfängerlehrbuch für Java – eine Initialisierung in der Art: MyDialog.setFrame(getParent()). Gerade dies aber führt bei mir zu einem Compilerfehler.

      Viele Grüße Wolfgang

      Comment


      • #4
        Hallo Wolfgang Heuberger<BR>
        <BR>

        Ich formuliere es mal so:<BR>
        Der Dialog wird vom Frame aufgerufen<BR>
        <BR>
        Der Konstruktor im Dialog verlangt:<BR>
        public Dialog (Frame owner, String title){...}<BR>
        Im Frame hast Du doch irgend einen Event, einen Button oder sowas, was den Dialog aufrufen soll. <BR>
        Dieser Event initialisiert den Dialog:<BR>
        Dialog dlg = new Dialog(this,"myDialog");<BR>
        this bezieht sich auf sich selbst, also das Frame.<BR>
        Wenn der Dialog geschlossen wird kehrt das Programm zum "owner"Frame zurück.
        <BR><BR>
        noch so nebenbei: Das schlaue Buch... !<BR>
        <BR>getParent() liefert die Container-Eigenschaft. Frame, Dialog und auch Panel sind Componentfähig, können also Komponenten aunehmen. //this.add(Komponente);//Button, Panel, Textfield...
        <BR>
        irgendwie erben sie von java.awt.Container.

        <BR><BR>
        fg DEBIA

        Comment

        Working...
        X