Tag: javafx

如何单击加载到JavaFX Webengine中的网站上的按钮

我是JavaFX的新手。 我已成功将网站加载到我的JavaFX应用程序中。 我想从我的java应用程序登录到该网站。 到目前为止,我能够将我的登录值插入相应的输入框,但我无法弄清楚如何单击提交按钮。 有人能帮我吗。 这是我到目前为止所拥有的。 这是我的控制器类。 public class Controller implements Initializable{ @FXML protected TextField usernameLogin; @FXML protected TextField passwordLogin; @FXML protected Button loginButton; @FXML protected WebView webviewBrowser; @Override public void initialize(URL location, ResourceBundle resources) { final WebEngine engine = webviewBrowser.getEngine(); engine.load(“http://gmail.com”); engine.setJavaScriptEnabled(true); loginButton.setOnAction(new EventHandler() { @Override public void handle(ActionEvent event) { String username = […]

如何在JavaFX中的ComboBox中为项添加值

如何为combobox中的项添加值,以便当用户从ComboBox选择项时,我能够显示该项的价格 例如。 如果用户选择动物,我可以显示该动物的价格。 用户选择dog然后我可以显示$45的价格。 public class comboBox extends Application { Stage window; Scene scene; Button button; ComboBox comboBox; public static void main(String[] args) { launch(args); } @Override public void start(Stage primaryStage) throws Exception { window = primaryStage; window.setTitle(“ComboBox”); button = new Button(“Submit”); comboBox = new ComboBox(); comboBox.getItems().addAll( “cat”, “dog”, “bird” ); comboBox.setPromptText(“Please select one”); button.setOnAction(e […]

Hibernate + SQLite没有创建数据库

这是我的问题: 我有一个使用JavaFX + Hibernate + SQLite的桌面应用程序。 这是我的模特: @Entity @Table(name = “usuario”) public class Usuario implements AbstractModel, Serializable { @Id @GeneratedValue(strategy = GenerationType.AUTO) private Integer id; @NotNull @Size(min=5, max=100) private String username; @NotNull @Size(min=5, max=100) private String password; @NotNull private Boolean administrador; @Version private Integer version; public Usuario() { } public Usuario(Integer id, String username, String […]

JavaFX WebView / WebEngine缓存外部JavaScript

情况 :我有一个简单的HTML页面,它有一个像这样的普通脚本标签 加载html后,我更新main.js,并重新加载(通过UI按钮)。 问题我没有采用新的JS,我必须关闭应用程序并再次打开它。 我做了什么尝试: – 不使用webEngine.reload(),但webEngine.load() – 每次重新加载时都会制作一个新的broswer。 – 使用新的broswer设置一个新的阶段 – 设置所有节点缓存 – 在HTML代码之后 -InetAddressCachePolicy: InetAddressCachePolicy.setNegativeIfNotSet(InetAddressCachePolicy.NEVER); -VM选项:-Dnetworkaddress.cache.ttl = 0。 问题有没有办法删除缓存或强制WebView重新加载所有资源,而不是每次更新它时为JS文件名附加一个数字? 注意:我使用NetBeans 7.3和上一个Java(更新22)

javafxcombobox下拉从屏幕边缘出来

我有java(8_40)和javaFX的最新版本。 我有一个包含10个项目的复选框。 我编译并运行该程序。 如果我将程序窗口移动到监视器屏幕的底部,则下拉列表将从监视器屏幕中移出。 无法单击屏幕上的项目。 相反,如果我尝试使用场景构建器2.0执行相同的布局,请单击预览,自动移动下拉列表以不退出屏幕。 为什么正确显示场景构建器,而不是“编译和运行”? 问题是如果我通过代码做图形是如果我使用文件fxml。 我在下面放了一个小程序示例,它给了我这个错误: 组件CustomControl.java public class CustomControl extends VBox { public CustomControl() { ComboBox asd = new ComboBox(); ObservableList data = FXCollections.observableArrayList(); asd.setItems(data); data.add(“1”); data.add(“2”); data.add(“3”); data.add(“4”); data.add(“5”); data.add(“6”); data.add(“7”); data.add(“8”); data.add(“9”); data.add(“10”); getChildren().add(asd); } } Main.java public class CustomControlExample extends Application { public static void main(String[] args) { […]

JavaFX颜色选择器的语言

有没有办法改变ColorPicker文本的语言,如“自定义颜色……”,“当前颜色”,“新颜色”,“色调”,“饱和度”,“亮度”,“不透明度”,“节省“,”使用“,”取消“?

呈现大图时的javafx NullPointerException

我正在尝试使用JavaFX 8下的GraphicsContext.drawImage(…)方法渲染.png图像。我的代码可以很好地处理大小为~1000px x 2000px的图像。 但不幸的是,我需要渲染大小为7000px x 14000px的图像。 加载此图像也可以正常工作,但是当调用drawImage(image, 0, 0, canvas.getWidth(), canvas.getHeight())方法时,我得到以下错误输出: java.lang.NullPointerException at com.sun.prism.impl.BaseGraphics.drawTexture(BaseGraphics.java:389) at com.sun.prism.impl.ps.BaseShaderGraphics.drawTexture(BaseShaderGraphics.java:139) at com.sun.javafx.sg.prism.NGCanvas.handleRenderOp(NGCanvas.java:1228) at com.sun.javafx.sg.prism.NGCanvas.renderStream(NGCanvas.java:997) at com.sun.javafx.sg.prism.NGCanvas.renderContent(NGCanvas.java:578) … more rendering stuff here at com.sun.javafx.sg.prism.NGNode.doRender(NGNode.java:2043) at com.sun.javafx.sg.prism.NGNode.render(NGNode.java:1951) at com.sun.javafx.tk.quantum.ViewPainter.doPaint(ViewPainter.java:469) at com.sun.javafx.tk.quantum.ViewPainter.paintImpl(ViewPainter.java:317) at com.sun.javafx.tk.quantum.PresentingPainter.run(PresentingPainter.java:89) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308) at com.sun.javafx.tk.RenderJob.run(RenderJob.java:58) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:129) at java.lang.Thread.run(Thread.java:745) 如果我在绘制到canvas时尝试调整图像大小或者尝试渲染整个图像时,它没有任何区别。 我的猜测是图像大小太大而无法呈现,但我无法找到任何来源来validation这一点,我也找不到任何解决我问题的方法。 我还对Java堆(使用Eclipse […]

如何集中JavaFX控件

更具体地说,为什么我的JavaFX控件没有居中? 这是两个截图,第一个刚开始后(我将窗口移动到一个更明显的位置,但尚未resize),第二个是在调整它以显示我的问题之后。 如果你帮我确认它的大小(在所有DPI上),当它第一次显示时,奖励积分: 方便地,相关代码包含在那些屏幕截图中。 如果您仍然需要它作为文本,请转到: private void initJFXPanel(JFXPanel holder) { { { rootGrid = new GridPane(); rootGrid.setAlignment(Pos.CENTER); rootGrid.setPadding(new Insets(16)); rootGrid.setHgap(16); rootGrid.setVgap(8); } interior = holder.getScene(); if (interior == null) holder.setScene(interior = new Scene(rootGrid)); interior.setRoot(rootGrid); } { statusLabel = new Label(“Checking for Updates…”); statusLabel.setAlignment(Pos.CENTER); statusLabel.setTextAlignment(TextAlignment.CENTER); rootGrid.add(statusLabel, 0, 0); } { progressBar = new ProgressBar(); progressBar.setProgress(-1); progressBar.setPrefWidth(Constants.MAX_WIN_BOUNDS.width […]

JavaFX TextField:自动将文本转换为大写

我的FXMl上有一个JavaFX TextField控件,看起来像这样…… 我想在用户输入时自动将所有字符更改为大写 。 我控制器中的代码: public void keyListener(KeyEvent event){ //maybe transform the pressed key to uppercase here… }

在开始学习JavaFX之前要了解什么?

我读到了JavaFX相对于Swing的优势(这不是讨论的重点),我想学习JavaFX。 但后来我对JavaFX脚本和XML等其他东西感到困惑……我还没有清楚的图片。 我想知道在尝试使用JavaFX之前必须知道的基本信息和编程/标记语言等所有内容。