我正在用JavaFX和Scene Builder制作一个应用程序。
我有主类和从主类调用的控制器。
我有一个按钮在控制器的宽度-45和高度-90
public class Main extends Application {
public static void main(String[] args) {
launch(args);
}
@Override
public void start(Stage primaryStage) throws Exception {
try {
Parent root =
FXMLLoader.load(getClass().getResource("/card/resources/fxml/card.fxml"));
Scene scene = new Scene(root, 1600, 600);
primaryStage.setScene(scene);
scene.getStylesheets().add(getClass().getResource("style.css")
.toExternalForm());
primaryStage.initStyle(StageStyle.UNDECORATED);
primaryStage.setMaximized(true);
primaryStage.setResizable(true);
primaryStage.getIcons().add(new Image("card/resources/logo-icon.png"));
primaryStage.show();
//adding resize and drag primary stage
ResizeHelper.addResizeListener(primaryStage);
//assign ALT+ENTER to maximize window
final KeyCombination kb = new KeyCodeCombination(KeyCode.ENTER, KeyCombination.CONTROL_DOWN);
scene.addEventHandler(KeyEvent.KEY_PRESSED, new EventHandler<KeyEvent>() {
@Override
public void handle(KeyEvent event) {
if (kb.match(event)) {
primaryStage.setMaximized(!primaryStage.isMaximized());
primaryStage.setResizable(true);
}
}
});
} catch (Exception e) {
e.printStackTrace();
}
}
}
public class Controller implements Initializable {
@FXML private AnchorPane anchorRow;
@FXML private StackPane hBoxCat0;
@FXML private Button btnPalette;
@FXML
public void initialize(URL location, ResourceBundle resources) {
}
}
如果您只想根据窗口是否全屏在两个数字之间更改PrefWidth
,那么您可以监听按钮
所属的Stage
的FullScreen
属性。
import javafx.beans.binding.Bindings;
import javafx.fxml.FXML;
import javafx.scene.control.Button;
public class Controller {
@FXML private Button btnPallet;
@FXML
private void initialize() {
btnPallet.prefWidthProperty().bind(
Bindings.when(Bindings.selectBoolean(btnPallet.sceneProperty(), "window", "fullScreen"))
.then(45)
.otherwise(25)
);
}
}
这首先会给出警告,因为在应用程序的这一点上,按钮
将不是场景
或窗口
的一部分。虽然这些警告很烦人,但代码仍然可以工作。
我正在从Sublime Text Editor切换到IntelliJ,在IntelliJ中,当我缩小IDE的宽度或将屏幕分成两个编辑器时,我的代码就会离开屏幕,我必须手动左右滚动才能看到全部内容。我如何改变设置,使它像Sublime,在那里的线长度将自动调整到屏幕的宽度?
} 以下是我从logcat收到的错误:
如何更改应用程序中所有按钮的文本颜色?现在唯一的想法是工作要做: 但是我有点担心使用who seam不仅影响按钮 我试了一下,但不起作用: 我想改变的主要是弹出对话框中按钮的颜色
在我的程序中,我有两个按钮:第一个改变框架背景,第二个改变按钮背景(只为自己)。重点是程序应该为程序中的每个按钮改变按钮背景(不仅仅是为它自己)。我应该怎么重写对话框?
每次我点击按钮1,我的应用程序就会崩溃。同一活动中的另一个按钮可以正常工作。我已经试过更换按钮和代码了。控制台中没有错误。
09-08 07:58:32.915 137 26-13726/com.ruthadeaton.bld3.calculator e/androidruntime:致命异常:main process:com.ruthadeaton.bld3.calculator.calculator,PID:13726 java.lang.numberformatexception:empty string ats