我正在编写一个 javafx 程序,我需要面板以恒定的速度更新。现在它设置为每秒更新一次。但我得到了这个错误,通常(但并非总是)当整个场景变得扭曲时,面板中会出现故障(它就像镜子本身以奇怪的断断续续的 x 模式一样。很难解释)。
完整错误:(java:22494): Gdk-WARNING **: 18:38:59.118: 调用 XSetErrorHandler() 并推送 GDK 错误陷阱。不要那样做。
这是我的计时器代码:
Timer timer = new Timer();
timer.scheduleAtFixedRate(new TimerTask() {
@Override
public void run() {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
try {
String x = txtDisplay.getText();
txtDisplay.setText(x.substring(1, x.length()) + x.substring(0, 1));
} catch (NullPointerException e) {
System.out.println("Error.");
}
}
});
}
}, 0, 500);
Run Code Online (Sandbox Code Playgroud)
我认为问题出在上面的块上,就像我可能违反了一些基本的挥杆规则一样。我的另一个想法是,它有两种方法同时编辑同一文本区域,因为我有其他方法设置文本区域的文本。
我很高兴能找到错误的解决方案或执行上述方法的更好方法。只需要每秒运行一次而不会崩溃。
谢谢。
编辑:一个新的开发,我现在不断收到“线程“AWT-EventQueue-0”java.lang.NullPointerException 中的异常”,但堆栈跟踪没有引用我的代码中的任何位置。
对于大部分代码,我遵循AWS 提供的 python 示例,对 JS/node 进行了必要的更改。
import axios from 'axios'
import {createHash, createHmac} from 'crypto'
import moment from 'moment'
async function send() {
const method = 'POST';
const service = 'execute-api';
const host = 'fjakldfda.execute-api.us-east-2.amazonaws.com';
const region = 'us-east-2';
const base = "https://"
// POST requests use a content type header. For DynamoDB,
// the content is JSON.
const content_type = 'application/json';
// DynamoDB requires an x-amz-target header that has this format:
// DynamoDB_<API version>.<operationName>
//##...but I don't! …Run Code Online (Sandbox Code Playgroud)