- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
<分区>
我在此项目中使用 JavaFX 8 和 FXML,并尝试使用程序中其他类的结果更新我的文本区域。
文本区域在 FXML 文档中定义如下:
<TextArea fx:id="feedBack" editable="false" focusTraversable="false"
layoutX="203.0" layoutY="32.0" prefHeight="205.0" prefWidth="308.0"
wrapText="true"/>
它在这里的 Controller 中被调用,注意它最初是一个“私有(private)”项目但是为了让它与我公开的类一起工作:
@FXML
public static TextArea feedBack;
编辑:值得注意的是,当 TextArea 被标识为“私有(private)”时,我可以毫无问题地使用设置/附加文本方法,但这不允许我在其他类中使用文本区域,这就是我需要做。
但是现在当我尝试执行 appendText() 或 setText() 时,如下所示:
feedBack.setText("Connection Made");
我得到了一个空点异常。为什么是这样?我通过做同样的事情在 JavaFX 7 中使用 FXML 完成了这项工作,并且工作正常。我缺少什么来完成这项工作?
编辑,用完整的小程序测试/证明损坏。我没有为这个创建另一个类,因为 textarea 无论如何都不会在控件中工作。
FXML:
<?xml version="1.0" encoding="UTF-8"?>
<?import java.lang.*?>
<?import java.util.*?>
<?import javafx.scene.*?>
<?import javafx.scene.control.*?>
<?import javafx.scene.layout.*?>
<AnchorPane id="AnchorPane" prefHeight="200" prefWidth="320" xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1" fx:controller="textareatester.FXMLDocumentController">
<children>
<Label fx:id="label" layoutX="126" layoutY="120" minHeight="16" minWidth="69" />
<TextArea fx:id="feedback" layoutX="61.0" prefHeight="200.0" prefWidth="200.0" wrapText="true" />
<Button fx:id="dostuff" layoutX="261.0" layoutY="62.0" mnemonicParsing="false" onAction="#handleButtonAction" text="Button" />
</children>
</AnchorPane>
主要方法:
package textareatester;
import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.stage.Stage;
public class TextAreaTester extends Application {
@Override
public void start(Stage stage) throws Exception {
Parent root = FXMLLoader.load(getClass().getResource("FXMLDocument.fxml"));
Scene scene = new Scene(root);
stage.setScene(scene);
stage.show();
}
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
launch(args);
}
}
Controller 类:
package textareatester;
import java.net.URL;
import java.util.ResourceBundle;
import javafx.event.ActionEvent;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.control.TextArea;
public class FXMLDocumentController implements Initializable {
@FXML
private Label label;
@FXML
public static TextArea feedback;
@FXML
private Button dostuff;
@FXML
private void handleButtonAction(ActionEvent event) {
System.out.println("You clicked me!");
feedback.setText("Hello World!"); ///<-- this is what gives me the NPE
}
@Override
public void initialize(URL url, ResourceBundle rb) {
// not touching anything
}
}
好奇者解决办法:我最终只是简单地从我的方法中返回结果字符串,然后将它们附加到 TextArea。
我的文本框有问题。 我有一个代表 GUI 线程的类和一个用于执行一些网络工作的工作线程的类,然后必须将日志添加到 GUI 线程中的文本框,以便您可以看到后台发生的事情。 但是,我遇到的问题是 GUI
我尝试了以下方法让我的文本框文本自动滚动: 我使用的步骤非常简单: 将文本框拖到表单上。 将文本框更改为多行。 添加垂直滚动。 使用 AppendText() 向文本框添加文本。 尽管尝试了此处提到的
如果字符串相同,则不会打印/绑定(bind)/发布到 WPF 表单文本框中的 View 。例如,如果我使用 random 来生成我正在制作成字符串的字节数组,那么它确实会发布到 View 中。 这是
我是 Kotlin 的新手,但我有很强的 Java 背景(Java 是我的日常工作)。我喜欢 Kotlin 中的一些快捷函数。其中一个重要的是 File.appendText()。在我看来,这非常方便
我正在开发一个 JavaFX 终端应用程序,它可以高速显示来自串行端口的文本。我正在使用 TextArea 控件来显示和管理文本。对于来自串行端口的每个文本 block ,我使用appendText
我有一个文本(有多行),需要将其放入 wxPython TextCtrl 中。 问题是其中一些行包含无法打印的字符。 我的解决方案是使用 AppendText,并 try catch 有问题的行。 当
我在 C++ 和 C# 之间有一个简单的客户端/服务器通信,其中 C# 程序向 C++ 发送一个字符串。字符串的发送分 3 个阶段完成。发送字符串长度-->发送字符串长度-->发送字符串。出于调试目的
我在 winforms 对话框(在 .net4.5 上)中有一系列按钮,它们将文本片段附加到名为 FieldDescription 的文本框,如下所示: private void SnippetBut
这个问题在这里已经有了答案: javafx 8 compatibility issues - FXML static fields (1 个回答) 关闭 8 年前。 我在此项目中使用 JavaFX
我目前正在按照 Geekpedia 上的精彩教程创建我自己的 Chat Client和 Chat Server . 将客户端连接到服务器工作正常,但我在聊天记录中显示文本时遇到了一些问题。 显示的第一
WPF 的初学者,请多多包涵。 在继续之前,我构建了一个概念验证应用程序。我决定先尝试使用 WPF 构建它。 这是场景: 我有: a View=CustomerView(带有“购买产品”按钮的用户控件
我是 Python 新手,所以我也是 wxPython 新手。我只是想知道这些 wx.TextCtrl 函数之间是否有任何区别。这个迷你代码显示了三倍相同的输出。如果没有差异,这些功能是否有历史原因?
我正在尝试使用 返回的 DateTimeFormatter 来解析表示具有 IsoField.QUARTER_OF_YEAR 的 LocalDate 值的文本DateTimeFormatterBuil
我正在使用django-crispy-forms渲染 django 中模型的形式。 django-crispy-forms 已经与 Twitter Bootstrap 很好地集成并为 AppdedTe
所以最近我们强制我们的应用程序在 IE9 模式下运行,从那时起,WatiN typetext、AppendText 与 TriggerClientChange(如下所示)结合使用就不再触发页面上的 J
为了使用 File.CreateText() 和 File.AppendText() 你必须: 通过调用这些方法之一打开流 写消息 关闭流 处理流 为了使用 File.AppendAllText()
这两种方法有什么区别? 一个比另一个更有效率吗? 我在想 AppendText() 可能使用类似于 StringBuilder 的方法,即它使用自己的缓存而不是每次都创建和附加一个新字符串,是这样吗?
我正在使用多行文本框,但出现了我无法完全解释的行为。我用 textbox.AppendText("line \n"); 向文本框追加新行。当使用这个 3 次时,我得到了 line line line
表格: class StartEndDateEpayOperatorsForm(forms.Form): ... def __init__(self, *args, **kwargs)
我必须将数千行动态生成的行写入文本文件。我有两个选择,哪个比另一个消耗更少的资源并且速度更快? A.使用 StringBuilder 和 File.WriteAllText StringBuilder
我是一名优秀的程序员,十分优秀!