Изменение TextArea из собственнойфункции программы в JAVAFX
не получается изменить текст в textarea , вылетает ошибка NullPointerException.
код контроллера
import javafx.event.ActionEvent; import javafx.fxml.FXML; import javafx.scene.control.Button; import javafx.scene.control.TextArea; import javafx.scene.control.TextField; import java.io.IOException; public class CCONTROL {
public client_connect con;
@FXML
private TextField nick;
@FXML
private TextArea text1;
@FXML
private TextField mess;
@FXML
private Button But2;
@FXML
private Button But1;
public String str=new String();
@FXML //but2
void onClickMethod2(ActionEvent event) {
try {
con=new client_connect();
}
catch(IOException e) {
e.printStackTrace();
}
}
@FXML //but1
void onClickMethod1(ActionEvent event) { //str=nick.getText()+": "+mess.getText();
//text1.setText( str+text1.getText()+"\r\n" );
con.tcsend( str );
}
public void send_message(String s){
text1.setText( "fdg" );
//text1.setText( s+"\r\n" );
}
//public void get }
Ответы (1 шт):
Автор решения: Владимир Карсанов
→ Ссылка
Убедитесь, что контроллер и fxml-форма связаны. В форме должна быть ссылка на контроллер в самом внешнем тэге. Ссыль являет собой атрибут тэга в таком виде:
fx:controller="full.qualifiled.name.of.CCONTROL"
Затем убедитесь, что переменная text1 связана с соответствующим виджетом в этой форме. Как-то так:
<TextField fx:id="text1" />
Скорее всего пока кодили, меняли имена переменных и где-то они не согласуются.
Ну, или приложите код fxml-формы, если ничо не получается. Хоть глянем чо там.