Başka bir sınıftan JApplet'te kullanıcı girişi bekleniyor

Benim iki dersim var. Biri, GUI'yi JApplet içinde oluşturur ve diğer sınıf, kullanıcı girdisini uygulamadan alır ve hesaplamaları yapar.

Uygulama sınıfı GUI oluşturur ve başlatılacak hesaplama sınıfını söyler. Daha sonra hesaplama sınıfı, kullanıcı girdisi istemek için uygulama sınıfından bir yöntemi çağırır. Bu yöntem daha sonra hesaplama sınıfına geri dönmek için JTextField işleminden dinler.

Ancak sorun, programı çalıştırdığınızda, kullanıcının metin alanına bir şey girmesini beklememesidir. Sonuç olarak, hesaplama sınıfı boş bir giriş alır.

Bunu nasıl düzeltebilirim?

Yöntemde ActionListener yerine JOptionPane.showInputDialog kullanmayı denedim ve bu işe yarıyor. Ama bunu kullanmak istemiyorum; Özellikle bir pop-up gibi ve kullanıcı doğrudan uygulamada veri girmesini istiyorum.

3
BTW 1) Daha iyi yardım için, bir SSCCE gönderin. 2) +1 için (yeniden. JOptionPane ) "Ama bunu kullanmak istemiyorum; esas olarak pop-up gibi olduğu için."
katma yazar Andrew Thompson, kaynak

1 cevap

Uygulamadaki JTextField 'a bir ActionListener ekleyin. Bir olay tetiklendiğinde (genellikle kullanıcı 'Enter' tuşuna bastığında), metin alanına String kullanarak hesaplama sınıfını arayın.

Ya da bunu farklı bir şekilde koymak için. Olayın kaynağı olan uygulama (uygulama), hesaplama sınıfının yöntemini çağırmalıdır. Etrafında başka bir yol olmamalı.

5
katma