当前位置: 首页 > news >正文

南宁网站设计报价新手学做网站从哪里开始

南宁网站设计报价,新手学做网站从哪里开始,建筑人才网987,企业管理培训课程名称javafx 和swing我很快将不得不在基于Swing的胖客户端中处理JavaFX –哦#xff0c;对不起#xff0c;我的意思是“多层富客户端”#xff01; 因此#xff0c;这使我来看看JFXPanel 。 JFXPanel是一个javax.swing.JComponent#xff0c;用于将JavaFX内容嵌入到Swing-UI中… javafx 和swing 我很快将不得不在基于Swing的胖客户端中处理JavaFX –哦对不起我的意思是“多层富客户端” 因此这使我来看看JFXPanel 。 JFXPanel是一个javax.swing.JComponent用于将JavaFX内容嵌入到Swing-UI中。 JFXPanel的用法类似于JPanel并且可以通过EDT作为通用Swing组件进行访问除了必须通过JavaFX应用程序线程来处理JavaFX组件之外。 为了解决这些问题我创建了两个类似的面板Swing JavaFX每个面板都有一个按钮一个TextField和一个Label并将它们放置在JSplitPane和JFrame中 仔细看里面 要尝试Swing - JavaFX互操作性按钮操作是将文本从TextField设置为JLabel反之亦然。 JPanel处理通用的Swing东西没有什么特别的但是JFXPanel包含JavaFX控件 public class SwingFXPanel extends JFXPanel {private Button testButton;private TextField testTextField;private Label testLabel;private VBox pane;public SwingFXPanel() {init();}private void init() {testButton new Button(I am a JavaFX Button);testTextField new TextField();testLabel new Label(empty);pane new VBox();pane.setAlignment(Pos.CENTER);pane.getChildren().addAll(testTextField, testButton, testLabel);Platform.runLater(this::createScene);}private void createScene() {Scene scene new Scene(pane);setScene(scene);}public Button getTestButton() {return testButton;}public TextField getTestTextField() {return testTextField;}public Label getTestLabel() {return testLabel;} } 这里很重要将场景添加到JavaFX Application线程内的JFXPanel Platform.runLater(this::createScene); 如果您致电 createScene() 从另一个线程您会获得Runtime-Exception java.lang.IllegalStateException: Not on FX application thread; currentThread AWT-EventQueue-0 同样每次与JavaFX相关内容的交互都必须放在JavaFX Application Thread上 例如 Platform.runLater(() - {swingFXPanel.getTestLabel().setText(swingPanel.getTestTextField().getText()); });public class InteropFrame extends JFrame {private JSplitPane centralSplitPane;private SwingPanel swingPanel;private SwingFXPanel swingFXPanel;public InteropFrame(){init();}private void init() {setTitle(Swing - JavaFX Interoperatbiliy);setSize(500, 500);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);setLayout(new BorderLayout());centralSplitPane new JSplitPane();centralSplitPane.setDividerLocation(0.5);centralSplitPane.setResizeWeight(0.3);swingPanel new SwingPanel();swingFXPanel new SwingFXPanel();swingPanel.getTestButton().addActionListener((ActionEvent e) - {Platform.runLater(() - {swingFXPanel.getTestLabel().setText(swingPanel.getTestTextField().getText());});});swingFXPanel.getTestButton().setOnAction((javafx.event.ActionEvent t) - {swingPanel.getTestLabel().setText(swingFXPanel.getTestTextField().getText());});centralSplitPane.setLeftComponent(swingPanel);centralSplitPane.setRightComponent(swingFXPanel);add(centralSplitPane, BorderLayout.CENTER);} }另外处理FXML也很简单 public class SwingFXMLPanel extends JFXPanel {FXMLprivate Button testButton;FXMLprivate TextField testTextField;FXMLprivate Label testLabel;private VBox rootPane;private URL fxmlResource;public SwingFXMLPanel(URL fxmlResource){this.fxmlResource fxmlResource;init();}private void init(){rootPane new VBox();FXMLLoader loader new FXMLLoader(fxmlResource);loader.setController(this);loader.setRoot(rootPane);try {loader.load();} catch (IOException ex) {Logger.getLogger(SwingFXMLPanel.class.getName()).log(Level.SEVERE, null, ex);}testButton.setText(I am a JavaFX Button);testLabel.setText(empty);Platform.runLater(this::createScene);}private void createScene() {Scene scene new Scene(rootPane);setScene(scene);}public Button getTestButton() {return testButton;}public TextField getTestTextField() {return testTextField;}public Label getTestLabel() {return testLabel;}} 对我来说让我的同事尽可能多地接受在Swing中使用JavaFX至关重要。 因此我想简化特定的FX应用程序线程处理。 因此如果使用JPanel的主要区别只是添加以下内容那么也许可以实现 private void createScene() {Scene scene new Scene(rootPane);setScene(scene);} 并致电 Platform.runLater(this::createScene); 在JFXPanel中 。 您可以在此处找到完整的示例代码。 翻译自: https://www.javacodegeeks.com/2014/11/swing-and-javafx-working-with-jfxpanel.htmljavafx 和swing
http://www.zqtcl.cn/news/340078/

相关文章:

  • 免费建网站的步骤wordpress分享可见内容
  • 成都网站建设公司服务商自己做网站还有出路吗
  • 汉南城乡建设局网站网站建设新手教程
  • 网站用途及栏目说明软件外包公司开发流程
  • 公司做网站做淘宝好还是自建网站好
  • 成功网站案例有哪些淮安市交通建设局网站
  • 购买虚拟机建网站网站开发合同变更
  • 备案的网站做跳转不影响备案把购彩网站建设
  • 2w网站建设模式百度应用市场
  • vps主机访问网站湖南建站网站
  • 滨州正规网站建设公司用r语言 做网站点击热力图
  • php网站模板wordpress自定义头像上传
  • 江油市规划和建设局网站一个app网站
  • 郑州网站建设up188WordPress响应式幻灯片
  • 幸运28网站代理怎么做网站后期维护工作包括哪些
  • 西安网站建设seo网络营销的职能
  • 大型网站建设哪家服务好dll网站服务
  • 怎样建设网赌网站江苏外贸网站建设
  • 做外贸有哪些网站怎么在360自己做网站
  • 企业网站建立费用 作什么科目深圳服装外贸公司
  • 淘宝网站建设代码视频开放api
  • 清廉企业建设骨科医院网站优化服务商
  • 公司网站建设开源平台网站建设推来客在哪里
  • 本地电脑静态网站建设半年工作总结
  • 潮州哪里做网站html in wordpress
  • 在浏览器上建设网站平面作品集展示图片
  • 建设网站的技术手段天津泰达建设集团网站
  • 怎样做读书会网站广州公司注册在线
  • 多个网站做计划响水哪家专业做网站
  • 中国建设基础设施总公司 网站怒江网站建设