题记:写这篇博客要主是加深自己对电话错误的认识和总结实现算法时的一些验经和训教,如果有错误请指出,万分感谢。
错误的fmxl文件写法:
<?xml version="1.0" encoding="UTF-8"?> <?import java.lang.*?> <?import java.util.*?> <?import javafx.geometry.*?> <?import javafx.scene.control.*?> <?import javafx.scene.layout.*?> <?import javafx.scene.paint.*?> <VBox alignment="TOP_CENTER" minWidth="158.0" prefHeight="710.0" prefWidth="158.0" xmlns:fx="http://javafx.com/fxml" fx:controller="testFXML.CustomControl"> <children> <Button mnemonicParsing="false" onAction="" prefWidth="150.0" text="新预订" VBox.vgrow="ALWAYS"> <VBox.margin> <Insets bottom="5.0" left="5.0" right="5.0" /> </VBox.margin> </Button> <Button mnemonicParsing="false" onAction="" prefWidth="150.0" text="修改预订" VBox.vgrow="ALWAYS"> <VBox.margin> <Insets bottom="5.0" left="5.0" right="5.0" top="5.0" fx:id="x1" /> </VBox.margin> </Button> <Button mnemonicParsing="false" onAction="" prefWidth="150.0" text="取消预订" VBox.margin="$x1" VBox.vgrow="ALWAYS" /> <Button mnemonicParsing="false" onAction="" prefWidth="150.0" text="预订金处置" VBox.margin="$x1" VBox.vgrow="ALWAYS" /> <Button mnemonicParsing="false" onAction="" prefWidth="150.0" text="预订入住" VBox.margin="$x1" VBox.vgrow="ALWAYS" /> <Button mnemonicParsing="false" onAction="" prefWidth="150.0" text="新刷" VBox.margin="$x1" VBox.vgrow="ALWAYS" /> <Button mnemonicParsing="false" onAction="" prefWidth="150.0" text="印打" VBox.margin="$x1" VBox.vgrow="ALWAYS" /> <TitledPane animated="false" collapsible="false" expanded="true" minWidth="150.0" prefHeight="91.0" prefWidth="150.0" text="姓名/电话" underline="false"> <content> <VBox prefHeight="19.0" prefWidth="162.0"> <children> <TextField prefWidth="200.0" text="5555" /> </children> </VBox> </content> <VBox.margin> <Insets bottom="5.0" left="10.0" right="10.0" top="462.0" /> </VBox.margin> </TitledPane> </children> </VBox>
意注下面的onAction=""
如果在程序中加载运行的话,会报如下的错误:
一个安静的夜晚,我独自一人,有些空虚,有些凄凉。坐在星空下,抬头仰望美丽天空,感觉真实却由虚幻,闪闪烁烁,似乎看来还有些跳动。美的一切总在瞬间,如同“海市蜃楼”般,也只是刹那间的一闪而过,当天空变得明亮,而这星星也早已一同退去……
Missing handler script.
/C:/Users/Administrator/git/testjavafx/bin/testFXML/testFXML.fxml:12
at javafx.fxml.FXMLLoader$Element.processEventHandlerAttributes(FXMLLoader.java:501)
at javafx.fxml.FXMLLoader$ValueElement.processEndElement(FXMLLoader.java:589)
at javafx.fxml.FXMLLoader.processEndElement(FXMLLoader.java:2430)
at javafx.fxml.FXMLLoader.load(FXMLLoader.java:2136)
at javafx.fxml.FXMLLoader.load(FXMLLoader.java:2028)
at javafx.fxml.FXMLLoader.load(FXMLLoader.java:2744)
at javafx.fxml.FXMLLoader.load(FXMLLoader.java:2723)
at javafx.fxml.FXMLLoader.load(FXMLLoader.java:2709)
at javafx.fxml.FXMLLoader.load(FXMLLoader.java:2696)
at javafx.fxml.FXMLLoader.load(FXMLLoader.java:2685)
at testFXML.CustomControlExample.start(CustomControlExample.java:15)
at com.sun.javafx.application.LauncherImpl$5.run(LauncherImpl.java:319)
at com.sun.javafx.application.PlatformImpl$5.run(PlatformImpl.java:215)
at com.sun.javafx.application.PlatformImpl$4$1.run(PlatformImpl.java:179)
at com.sun.javafx.application.PlatformImpl$4$1.run(PlatformImpl.java:176)
at java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl$4.run(PlatformImpl.java:176)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.access$100(WinApplication.java:29)
at com.sun.glass.ui.win.WinApplication$3$1.run(WinApplication.java:73)
at java.lang.Thread.run(Unknown Source)
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(Unknown Source)
Caused by: javafx.fxml.LoadException: Missing handler script.
at javafx.fxml.FXMLLoader$Element.processEventHandlerAttributes(FXMLLoader.java:501)
at javafx.fxml.FXMLLoader$ValueElement.processEndElement(FXMLLoader.java:589)
at javafx.fxml.FXMLLoader.processEndElement(FXMLLoader.java:2430)
at javafx.fxml.FXMLLoader.load(FXMLLoader.java:2136)
at javafx.fxml.FXMLLoader.load(FXMLLoader.java:2028)
at javafx.fxml.FXMLLoader.load(FXMLLoader.java:2744)
at javafx.fxml.FXMLLoader.load(FXMLLoader.java:2723)
at javafx.fxml.FXMLLoader.load(FXMLLoader.java:2709)
at javafx.fxml.FXMLLoader.load(FXMLLoader.java:2696)
at javafx.fxml.FXMLLoader.load(FXMLLoader.java:2685)
at testFXML.CustomControlExample.start(CustomControlExample.java:15)
at com.sun.javafx.application.LauncherImpl$5.run(LauncherImpl.java:319)
at com.sun.javafx.application.PlatformImpl$5.run(PlatformImpl.java:215)
at com.sun.javafx.application.PlatformImpl$4$1.run(PlatformImpl.java:179)
at com.sun.javafx.application.PlatformImpl$4$1.run(PlatformImpl.java:176)
at java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.application.PlatformImpl$4.run(PlatformImpl.java:176)
at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
at com.sun.glass.ui.win.WinApplication.access$100(WinApplication.java:29)
at com.sun.glass.ui.win.WinApplication$3$1.run(WinApplication.java:73)
... 1 more
改成如下的式形:
<?xml version="1.0" encoding="UTF-8"?> <?import java.lang.*?> <?import java.util.*?> <?import javafx.geometry.*?> <?import javafx.scene.control.*?> <?import javafx.scene.layout.*?> <?import javafx.scene.paint.*?> <VBox alignment="TOP_CENTER" minWidth="158.0" prefHeight="710.0" prefWidth="158.0" xmlns:fx="http://javafx.com/fxml" fx:controller="testFXML.CustomControl"> <children> <Button mnemonicParsing="false" prefWidth="150.0" text="新预订" VBox.vgrow="ALWAYS"> <VBox.margin> <Insets bottom="5.0" left="5.0" right="5.0" /> </VBox.margin> </Button> <Button mnemonicParsing="false" prefWidth="150.0" text="修改预订" VBox.vgrow="ALWAYS"> <VBox.margin> <Insets bottom="5.0" left="5.0" right="5.0" top="5.0" fx:id="x1" /> </VBox.margin> </Button> <Button mnemonicParsing="false" prefWidth="150.0" text="取消预订" VBox.margin="$x1" VBox.vgrow="ALWAYS" /> <Button mnemonicParsing="false" prefWidth="150.0" text="预订金处置" VBox.margin="$x1" VBox.vgrow="ALWAYS" /> <Button mnemonicParsing="false" prefWidth="150.0" text="预订入住" VBox.margin="$x1" VBox.vgrow="ALWAYS" /> <Button mnemonicParsing="false" prefWidth="150.0" text="新刷" VBox.margin="$x1" VBox.vgrow="ALWAYS" /> <Button mnemonicParsing="false" prefWidth="150.0" text="印打" VBox.margin="$x1" VBox.vgrow="ALWAYS" /> <TitledPane animated="false" collapsible="false" expanded="true" minWidth="150.0" prefHeight="91.0" prefWidth="150.0" text="姓名/电话" underline="false"> <content> <VBox prefHeight="19.0" prefWidth="162.0"> <children> <TextField prefWidth="200.0" text="5555" /> </children> </VBox> </content> <VBox.margin> <Insets bottom="5.0" left="10.0" right="10.0" top="462.0" /> </VBox.margin> </TitledPane> </children> </VBox>
文章结束给大家分享下程序员的一些笑话语录: 苹果与谷歌之争就是封闭收费与自由免费思想之争。(别急着把google来膜拜哦?那可是一家公司,以赚钱为目标的公司!当年我Party就是这样把广大劳动人民吸引过来的。今天的结果你们都看到了。)