2013-08-25 37 views
0

我想,以適應gridbox翻過整個場面按所附圖片和下面的代碼,但是我不能不管我做什麼! 我試圖產生空的行和列,但仍無法填補,除非我增添了不少。 我想指定一些行和列,然後讓程序沿着屏幕平分這些,請幫助如何javafx2適合gridpane翻過整個場景

我怎樣才能找到表格裏面的文本右邊的單元格?

enter image description here

@Override public void start(Stage stage) { 

     timer.start(); 
     buildData_timer.start(); 

     Group root = new Group(); 
     Scene scene = new Scene(root, 1180, 650); 
     stage.setScene(scene); 
     stage.setTitle("Separator Sample"); 
     scene.getStylesheets().addAll(this.getClass().getResource("style.css").toExternalForm()); 

     GridPane Mainpane = new GridPane(); 
     scene.setRoot(Mainpane); 
     Mainpane.setGridLinesVisible(true); 
     Mainpane.setId("Mainpane"); 

     GridPane prayertime_pane = new GridPane(); 
     prayertime_pane.setId("prayertime_pane"); 

     prayertime_pane.setGridLinesVisible(true); 
     prayertime_pane.setPadding(new Insets(20, 20, 20, 20)); 
     prayertime_pane.setVgap(20); 
     prayertime_pane.setHgap(35); 

     HBox clock1Box = new HBox(); 
     clock1Box.setSpacing(0); 
     clock1Box.getChildren().addAll(clock); 

     HBox fajrBox = new HBox(); 
     fajrBox.setSpacing(0); 
     fajrBox.setMaxSize(155, 54); 
     fajrBox.getChildren().addAll(fajr_hourLeft, fajr_hourRight, time_Separator1, fajr_minLeft, fajr_minRight); 
     prayertime_pane.setConstraints(fajrBox, 0, 1); 
     prayertime_pane.getChildren().add(fajrBox); 

     HBox zuhrBox = new HBox(); 
     zuhrBox.setSpacing(0); 
     zuhrBox.setMaxSize(155, 54); 
     zuhrBox.getChildren().addAll(zuhr_hourLeft, zuhr_hourRight, time_Separator2, zuhr_minLeft, zuhr_minRight); 
     prayertime_pane.setConstraints(zuhrBox, 0, 2); 
     prayertime_pane.getChildren().add(zuhrBox); 

     HBox asrBox = new HBox(); 
     asrBox.setSpacing(0); 
     asrBox.setMaxSize(155, 54); 
     asrBox.getChildren().addAll(asr_hourLeft, asr_hourRight, time_Separator3, asr_minLeft, asr_minRight); 
     prayertime_pane.setConstraints(asrBox, 0, 3); 
     prayertime_pane.getChildren().add(asrBox); 

     HBox maghribBox = new HBox(); 
     maghribBox.setSpacing(0); 
     maghribBox.setMaxSize(155, 54); 
     maghribBox.getChildren().addAll(maghrib_hourLeft, maghrib_hourRight, time_Separator4, maghrib_minLeft, maghrib_minRight); 
     prayertime_pane.setConstraints(maghribBox, 0, 4); 
     prayertime_pane.getChildren().add(maghribBox); 

     HBox ishaBox = new HBox(); 
     ishaBox.setSpacing(0); 
     ishaBox.setMaxSize(155, 54); 
     ishaBox.getChildren().addAll(isha_hourLeft, isha_hourRight, time_Separator5, isha_minLeft, isha_minRight); 
     prayertime_pane.setConstraints(ishaBox, 0, 5); 
     prayertime_pane.getChildren().add(ishaBox); 

     TextFlow fajrtextFlow = new TextFlow(); 
     Text text1 = new Text("الفجر\n"); 
     text1.setId("prayer-text-arabic"); 
     Text text10 = new Text("Fajr"); 
     text10.setId("prayer-text-english"); 
     fajrtextFlow.getChildren().addAll(text1, text10); 
     prayertime_pane.setConstraints(fajrtextFlow, 1, 1); 
     prayertime_pane.getChildren().add(fajrtextFlow); 

     TextFlow duhrtextFlow = new TextFlow(); 
     Text text2 = new Text("الظهر\n"); 
     text2.setId("prayer-text-arabic"); 
     Text text20 = new Text("Duhr"); 
     text20.setId("prayer-text-english"); 
     duhrtextFlow.getChildren().addAll(text2,text20); 
     prayertime_pane.setConstraints(duhrtextFlow, 1, 2); 
     prayertime_pane.getChildren().add(duhrtextFlow); 

     TextFlow asrFlow = new TextFlow(); 
     Text text3 = new Text("العصر\n"); 
     text3.setId("prayer-text-arabic"); 
     Text text30 = new Text("Asr"); 
     text30.setId("prayer-text-english"); 
     asrFlow.getChildren().addAll(text3,text30); 
     prayertime_pane.setConstraints(asrFlow, 1, 3); 
     prayertime_pane.getChildren().add(asrFlow); 

     TextFlow maghribFlow = new TextFlow(); 
     Text text4 = new Text("المغرب\n"); 
     text4.setId("prayer-text-arabic"); 
     Text text40 = new Text("Maghrib"); 
     text40.setId("prayer-text-english"); 
     maghribFlow.getChildren().addAll(text4,text40); 
     prayertime_pane.setConstraints(maghribFlow, 1, 4); 
     prayertime_pane.getChildren().add(maghribFlow); 

     TextFlow ishaFlow = new TextFlow(); 
     Text text5 = new Text("العشاء\n"); 
     text5.setId("prayer-text-arabic"); 
     Text text50 = new Text("Isha"); 
     text50.setId("prayer-text-english"); 
     ishaFlow.getChildren().addAll(text5,text50); 
     prayertime_pane.setConstraints(ishaFlow, 1, 5); 
     prayertime_pane.getChildren().add(ishaFlow); 

     final Separator sepHor = new Separator(); 
//  sepHor.setAlignment(Pos.CENTER_LEFT); 
//  sepHor.setOrientation(Orientation.HORIZONTAL); 
     prayertime_pane.setConstraints(sepHor, 0, 1); 
     prayertime_pane.setColumnSpan(sepHor, 2); 
     prayertime_pane.getChildren().add(sepHor);  

     Mainpane.setConstraints(prayertime_pane, 2, 3); 
     Mainpane.getChildren().add(prayertime_pane); 

     Mainpane.setConstraints(clock1Box, 7, 1); 
     Mainpane.getChildren().add(clock1Box); 

     stage.show(); 


//  stage.setFullScreen(true); 
    } 

回答

0

嘗試

ColumnConstraints c1 = new ColumnConstraints(); 
c1.setHgrow(Priority.ALWAYS); 
ColumnConstraints c2 = new ColumnConstraints(); 
c2.setHgrow(Priority.NEVER); 

Mainpane.getColumnConstraints().addAll(c1, c2); 

RowConstraints r1 = new RowConstraints(); 
r1.setVgrow(Priority.NEVER); 
RowConstraints r2 = new RowConstraints(); 
r2.setVgrow(Priority.ALWAYS); 

Mainpane.getRowConstraints().addAll(r1, r2); 

更多行/列/單元格設置調查GridPaneRowConstraintsColumnConstraints

不過我建議你使用AnchorPaneBorderPane這裏。