我正在将我的旧Java应用程序从swing转换为javafx,我遇到了一个问题.
我正在使用以下代码来捕获屏幕截图:
public ScreenCapper() {
ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
gs = ge.getScreenDevices();
try {
robot = new Robot(gs[gs.length-1]);
} catch (AWTException e) {
LOGGER.getInstance().ERROR("Error creating screenshot robot instance!");
}
}
public Color capture() {
Rectangle bounds;
mode = gs[0].getDisplayMode();
bounds = new Rectangle(0, 0, mode.getWidth(), mode.getHeight());
//......
}
Run Code Online (Sandbox Code Playgroud)
这在Windows下运行应用程序时工作正常.但是,在OSX下运行时会出现以下异常:
Exception in Application start method
Exception in thread "main" java.lang.RuntimeException: Exception in Application start method
at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:403)
at com.sun.javafx.application.LauncherImpl.access$000(LauncherImpl.java:47)
at com.sun.javafx.application.LauncherImpl$1.run(LauncherImpl.java:115)
at java.lang.Thread.run(Thread.java:722)
Caused by: java.awt.HeadlessException
at sun.java2d.HeadlessGraphicsEnvironment.getScreenDevices(HeadlessGraphicsEnvironment.java:72)
at be.beeles_place.roggbiv.utils.ScreenCapper.<init>(ScreenCapper.java:33)
at be.beeles_place.roggbiv.modes.AverageColorMode.start(AverageColorMode.java:31) …Run Code Online (Sandbox Code Playgroud) 我在flex 4.6和air 3.1中遇到了软键盘行为的一些问题
我有一个顶部有搜索栏的列表.当用户选择TextInput组件时,软键盘会弹出它应该的样子.现在,当用户完成输入文本并按下返回(或完成/搜索/ ...)键时,我希望软键盘消失.
到目前为止我尝试过的:
我已将returnKeyLabel属性设置为"done",并且按钮会相应显示.然而它只能解除Android上的键盘,在IOS上键盘只是熬夜.
然后,我尝试不设置returnKeyLabel并手动捕获Return键并将焦点设置为另一个不需要软键盘但也不起作用的元素.
我还尝试在按下Return键时调用我自己的"伪造"点击事件,但这也没有用.
作为搜索此问题的一部分,我在Flex Mobile中找到了这个Dismiss SoftKeyboard,但这也没有用.或者至少不在flex 4.6中
现在有没有人知道隐藏软键盘的好方法或使returnKeyLabel"完成"工作在IOS上可以使用flex 4.6/air 3.1?