JavaFX كيفية ضبط الحد الأقصى/الدقيقة لحجم النافذة؟

StackOverflow https://stackoverflow.com//questions/12686120

  •  12-12-2019
  •  | 
  •  

سؤال

هل يعمل setMinSize() على الحاويات، GridPane على سبيل المثال؟لقد وجدت أن GridPane في برنامجي يتجاهل الحد الأدنى.خصائص الحجم أثناء تغيير حجمها يدويًا.إليك كود FXML:

<GridPane fx:id="gp" prefHeight="134.0" prefWidth="238.0" xmlns:fx="http://javafx.com/fxml" fx:controller="javafxapplication12.SampleController">
  <columnConstraints>
    <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0" />
    <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0" />
  </columnConstraints>
  <rowConstraints>
    <RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
    <RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
    <RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
  </rowConstraints>
</GridPane>

وفئة التحكم

public class SampleController implements Initializable {

    @FXML
    private GridPane gp;

    @Override
    public void initialize(URL url, ResourceBundle rb) {
    gp.setMaxWidth(700);
    gp.setMinSize(200, 200);
    }   

ما هو الخطأ هنا؟هل يجب أن يكون هناك نوع من الحجم الأقصى/الدقيق لـ "النافذة"؟

هل كانت مفيدة؟

المحلول

سأفترض أنه بالنافذة، تقصد أ منصة (التي الفئات الفرعية نافذة).

يمكن أن يختلف حجم النافذة عن حجم الحاوية الجذرية للمشهد.يمكنك التفكير في النافذة أو المسرح كمنفذ عرض مستقل في المشهد والذي يمكن أن يكون حجمه أكبر أو أصغر من الحد الأدنى والحد الأقصى لمواصفات جذر المشهد.

لتعيين الحد الأدنى أو الأقصى لحجم المسرح، قم بتعيينه minHeight و minWidth أو اقصى ارتفاع و maxWidth ملكيات.

إجابات على الأسئلة الإضافية

هل يمكن ضبط المسرح ليناسب حجم العرض بالكامل؟

stage.setFullScreen(true)

ولكن كيف نجعل الحجم بنفس الحجم الذي نصنعه من خلال النقر على شريط العنوان؟

stage.setMaximized(true)

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top