Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/378.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 屏幕上摆动键盘_Java_Swing - Fatal编程技术网

Java 屏幕上摆动键盘

Java 屏幕上摆动键盘,java,swing,Java,Swing,我正在Windows XP上用Java开发一个信息亭系统。并且需要在屏幕上做一个键盘。我不知道该怎么办。所以你们能帮我做这件事吗。任何人对此都有一些想法。 谢谢我为我的公司在SWT和AWT中实现了OSK 我们使用ini文件初始化OSk布局,您可以定义键盘布局(大小、字体、键盘行的外观、键标签和键操作) 首先,您应该生成读取这些ini文件的键盘。这是做得很快。 您应该在创建的按钮和顶部窗口上启用聚焦。否则,获得关键动作的组件将始终失去焦点 第二步是实现事件调度程序管理器。您必须将OSK密钥事件发送

我正在Windows XP上用Java开发一个信息亭系统。并且需要在屏幕上做一个键盘。我不知道该怎么办。所以你们能帮我做这件事吗。任何人对此都有一些想法。
谢谢

我为我的公司在SWT和AWT中实现了OSK

我们使用ini文件初始化OSk布局,您可以定义键盘布局(大小、字体、键盘行的外观、键标签和键操作)

首先,您应该生成读取这些ini文件的键盘。这是做得很快。 您应该在创建的按钮和顶部窗口上启用聚焦。否则,获得关键动作的组件将始终失去焦点

第二步是实现事件调度程序管理器。您必须将OSK密钥事件发送到所有侦听事件对象。您可以使用发送事件,也可以使用获取聚焦组件并直接将其设置为


对于SWT,它工作得非常好,但在AWT中,它们存在一些线程和焦点问题。

这一问题出现在搜索如何在java/swing中转到锁定的kiosk模式时…-我花了一段时间才弄明白如何做到这一点,因此,对于像我一样来到这里的人来说:

public class FullScreen extends JWindow {

    public FullScreen()
    {

      getContentPane().add(new JLabel("A JFrame Kiosk"), BorderLayout.NORTH);

      JButton closeButton = new JButton("Close");

      closeButton.addActionListener( new ActionListener()
          {
              public void actionPerformed( ActionEvent ae )
              {
                  System.out.println("Close button Pressed");
                  FullScreen.this.setVisible(false);
                  System.exit(0);
              }
          });
      getContentPane().add(closeButton, BorderLayout.CENTER);
    }

    public static void main(String[] args) throws Exception {

        SwingUtilities.invokeLater(new Runnable() {
            public void run() {      
                GraphicsEnvironment.
                    getLocalGraphicsEnvironment().
                        getDefaultScreenDevice().
                            setFullScreenWindow(new FullScreen());
              }
        });
    }
}

请在您的问题中提供任何其他信息。并非每个用户都会阅读评论,可能只是我,但这似乎并不能解决问题。我同意,这是针对不同的问题。虽然这些信息很受欢迎,但你最好自己创建一个新问题并回答它,这样人们就可以正确地搜索它。