AWT Maus Click abfragen????



  • Hallo

    Die meisten werden jetzt bestimmt sagen das haben wir doch schon hundert mal gehabt.
    Diese Problematik ist aber bischen anders.
    Ich habe eine schleife in der ich einige Operationen ausführe Daten holen -> Daten analysieren -> Daten in DB schreiben usw.

    Jetzt habe ich ein Button mit dem ich dir ganze Sache abbrechen will.
    Gibt es eine Möglichkeit das ich nach jeden Schreiben nach schauen kann ob der Button betätigt wurde, wenn ja das ich dann alles abbreche.

    Hat jemand eine Idee



  • Warum dauernd abfragen? Der Button löst doch ein Ereignis aus, wenn er geklickt wird? 😕

    In der Ereignisbehandlung kannst du doch dem Thread mitteilen, das er abbrechen soll.



  • Genau das geht ja nicht.

    Leidre bekommt die Virual Maschine oder das Button nicht mit das dieses Button geklickt wurde.

    Das actionListener wurde schon dem Button zugeweisen

    btnAbbrechen.addActionListener(new ServerToClientDialog_btnAbbrechen_actionAdapter(this));
    

    Es ist kein Thread.
    Das ist ein Programm für ein PDA und leider habe ich es bis jetzt nicht geschafft einen Thread parallel zu starten.
    Die Treads werden auch Sequenziell gestartet.

    Das ist eine Creme Virutal Maschine.



  • Ich vermute, dass deine Schleife so CPU-lastig ist, dass andere Bereiche gar nicht zum Tragen kommen.
    Eigentlich sehe ich ausser Threading keine andere Möglichkeit das Problem zu beheben. Für die Schleife müsstest du dir sowas wie einen Workerthread basteln der innerhalb der while-Schleife auf ein Flag abfrägt. Die Ereignisbehandlung des buttons müsste dann dieses Flag setzen, so dass die Schleife mit ihrer Ausführung aufhören kann.



  • hmm, hast du denn auch

    MyRunnable mr = new MyRunnable();
    Thread t = new Thread(mr);
    t.start();
    

    versucht um den worker-thread parallel zu starten ?

    allerdings habe ich noch nie was von dieser JVM gehört. vielleicht unterstützt die das gar nicht.



  • Ich vermute, dass deine Schleife so CPU-lastig ist, dass andere Bereiche gar nicht zum Tragen kommen.
    Eigentlich sehe ich ausser Threading keine andere Möglichkeit das Problem zu beheben. Für die Schleife müsstest du dir sowas wie einen Workerthread basteln der innerhalb der while-Schleife auf ein Flag abfrägt. Die Ereignisbehandlung des buttons müsste dann dieses Flag setzen, so dass die Schleife mit ihrer Ausführung aufhören kann.

    Genau das ist es Cengiz.
    Ich wollte ein Thread starten aber irgendwie habe ich es net geschaft.

    So hatte ich das versuch gehabt.

    createTableThread = new CreateDatabaseThread(this);
          createTableThread.run();
    


  • und?

    was ist passiert?



  • Versuch mal createTableThread.start();

    anstatt

    createTableThread.run();

    MfG


Anmelden zum Antworten