¿Es posible pasar un JFrame como parámetro y obtengo los campos que creé?

Por ejemplo, quiero tomar el valor de un JTextField. En JFrame puedo hacer esto con un simple txtField.getText(), pero ¿cómo paso el parámetro JFrame like?

static boolean validateFields(Webcrawler wc) {
    try {
        //I created the txtUrl in the original JFrame, I can take him there, 
        //but not here.
        //The code is from the JFrame is generated by Netbeans.
        wc.getTxtUrl().getText(); //<-- is something like this I want to do.
        return true;
    } catch (Exception e) {
        return false;
    }
}
Respuesta 1

Lo más probable es que las variables miembro para sus widgets de entrada (como JTextFields) sean privadas y, por lo tanto, inaccesibles desde el exterior. Puede declararlos públicos o escribir funciones de acceso para sus valores. Algo en la línea de (dentro de su JFrame o una clase derivada de ese JFrame si es creado por un tercero:

public String getTxtFieldText () {return txtField.getText ();}
Respuesta: 2

Hay algunas formas de hacer lo que quieres hacer.

1) Exponga los campos de texto que necesita validar. por ejemplo, exponer public TextField getUrlTextField () desde su JFrame. Luego, dentro de su método de validación que acepta el JFrame, puede extraer el texto de todos los campos.

NO HAGAS ESTO. Está mezclando la lógica de validación con la Vista (el JFrame).

En su lugar, debe usar una clase Controlador que sirva como intermediario entre su Vista (el JFrame) y el Modelo que lo está validando. En particular, vea cómo NetBeans Platform hace sus paneles de opciones usando OptionsPanelController . Esta publicación de blog tiene un buen ejemplo.

Respuesta: 3

Tengo este cliente, la información del servidor no es importante. La salida de este código es muy aleatoria. class Client {public static void main (String args []) lanza Exception {...

Estoy planeando iniciar un proyecto de juego para Android 3.0 usando Eclipse como IDE. Durante el desarrollo, lo que idealmente quiero es la capacidad de construir y ejecutar el juego en JRE en mi propio sistema operativo. Es decir, yo soy ...

Estoy haciendo una aplicación en ANDROID que se usará en dos extremos. Quiero que cada extremo funcione como cliente y servidor para ejecutar el chat en ellos. Solo para verificarlo, solo el Cliente se está ejecutando en una máquina ...

estoy escribiendo el segmento DHT en un archivo jpeg. Escribo Bytes en una matriz de bytes. byte [] huffman_Info = {// Marcar como segmento DHT (byte) 0xff, (byte) 0xc4, ...