Thứ Sáu, 12 tháng 9, 2014

[JavaFX 8] Phần 3 (tt) : Các thành phần giao diện người dùng

Phần 3 (tt) : Các thành phần giao diện người dùng
VI. ChoiceBox :
1. Tạo 1 ChoiceBox :
2.  Một số phương thức dành cho choicebox :
Kiểu trả về
Phương thức
Miêu tả
ObservableList
getItems()
Lấy ra tất cả các Item của choicebox.
Vd :  ObservableList list = cb.getItems();
SingleSelectionModel
getSelectionModel()
Lấy ra SelectionModel dành cho choicebox và sử dụng SelectionModel này để :
- Thiết lập Item nào được chọn mặc định.
Vd: cb.getSelectionModel().select(1);

- Lắng nghe Item nào đang được chọn khi click chuột.
Object
getValue()
Trả về Item đang được chọn.
void
setValue(Object value)
Thay thế Item được chọn bằng value
boolean
isShowing()
Drop down box có đang hiển thị không.
void
setToolTip(ToolTip t)
Hiển thị tooltip.
Vd: cb.setTooltip(new Tooltip(“Select day !”));
void
setRotate(doube value)
Xoay text theo góc value.
Vd: label.setRotate(90); // xoay 90o
void
setTranslateX(double value)
Di chuyển label theo chiều ngang cách vị trí ban đầu value
void
setTranslateY(double value)
Di chuyển label theo chiều dọc cách vị trí ban đầu value
void
setScaleX(double value)
Mở rộng hay thu nhỏ kích cỡ  label theo chiều ngang
void
setScaleY(double value)
Mở rộng hay thu nhỏ kích cỡ  label theo chiều dọc

VII. TextField :
1. Tạo 1 TextField :
2.  Một số phương thức dành cho TextField :

kiểu trả về
Phương thức
Miêu tả
void
setAlignment(Pos value)
Canh chỉnh vị trí text của TextField
void
setFont(Font value)
Kiểu Font dành cho TextField.
void
setText(String value)
Thiết lập giá trị text hiển thị trong TextField
string
getText()
Lấy  giá trị text
void
setEditable(boolean value)
Cho phép nhập liệu hay không ?
void
setToolTip(ToolTip t)
Hiển thị tooltip.
void
setRotate(doube value)
Xoay text theo góc value.
void
setTranslateX(double value)
Di chuyển label theo chiều ngang cách vị trí ban đầu value
void
setTranslateY(double value)
Di chuyển label theo chiều dọc cách vị trí ban đầu value
void
setScaleX(double value)
Mở rộng hay thu nhỏ kích cỡ  textfield theo chiều ngang
void
setScaleY(double value)
Mở rộng hay thu nhỏ kích cỡ  textfield theo chiều dọc
VIII. Password Field :
1. Tạo 1 Password Field :
2.  Một số phương thức dành cho Password Field:

kiểu trả về
Phương thức
Miêu tả
void
setAlignment(Pos value)
Canh chỉnh vị trí text của field
void
setFont(Font value)
Kiểu Font dành cho field.
void
setText(String value)
Thiết lập giá trị text hiển thị trong field
string
getText()
Lấy  giá trị text
void
setEditable(boolean value)
Cho phép nhập liệu hay không ?
void
setToolTip(ToolTip t)
Hiển thị tooltip.
void
setRotate(doube value)
Xoay text theo góc value.
void
setTranslateX(double value)
Di chuyển label theo chiều ngang cách vị trí ban đầu value
void
setTranslateY(double value)
Di chuyển label theo chiều dọc cách vị trí ban đầu value
void
setScaleX(double value)
Mở rộng hay thu nhỏ kích cỡ  field theo chiều ngang
void
setScaleY(double value)
Mở rộng hay thu nhỏ kích cỡ  field theo chiều dọc
IX . Scroll Bar :
1 ScrollBar bao gồm 3 vùng :
- button rigthbutton left (button down và button up nếu scrollBar đứng)
- track (khoảngg cách giữa 2 button)  
- thumb (cho phép di chuyển giữa 2 button ).
1. Tạo 1 Scroll Bar :
2.  Một số phương thức dành cho Scroll Bar :

kiểu trả về
Phương thức
Miêu tả
void
setMax(doube  value)
Thiết lập giá trị lớn nhất cho ScrollBar
void
setMin(doube  value)
Thiết lập giá trị nhỏ nhất cho ScrollBar
void
setValue(doube  value)
Thiết lập vị trí hiện tại của Thumb
DoubleProperty
valueProperty()
Phương thức này sử dụng để : lấy ra hiện tại  giá trị Thumb, cũng như thiết lập event khi thumb thay đổi giá trị.
void
setPrefHeight(doube  value)
Thiết lập chiều cao cho ScrollBar.
void
setPrefWidth(doube  value)
Thiết lập chiều ngang cho ScrollBar.
3. Ví dụ :
Sử dụng ScrollBar để tạo 1 sileshow hình ảnh đơn giản.
public class ExampleScrollBar extends Application {

   ImageView[] pics = new ImageView[5];
   ScrollBar scrollBar;

   public void start(Stage primaryStage) {
      // tạo 1 Vbox để biểu diễn các Image theo chiều dọc
       VBox picsBox = new VBox();
       picsBox.setMaxHeight(250);

       // lần lượt thêm 5 Image vào picsBox
       for (int i = 0; i < 5; i++) {
           pics[i] = new ImageView("graphics/chart_" + (i + 1) + ".png");
           picsBox.getChildren().add(pics[i]);
       }
       
       // tạo 1 ScrollBar
       scrollBar = new ScrollBar();
       // scrollBar chiều đứng
       scrollBar.setOrientation(Orientation.VERTICAL);
       // giá trị thấp nhất là 0
       scrollBar.setMin(0);
       // giá trị hiện tại là 50
       scrollBar.setValue(50);
       // giá trị cao nhất là 250
       scrollBar.setMax(250);
      // chiều cao của scrollBar là 250
       scrollBar.setPrefHeight(250);
      // vị trị đặt scrollbar có X là 200 (mặc định là 0)
       scrollBar.setLayoutX(200);

      // tạo event khi giá trị thumb thay đổi
       scrollBar.valueProperty().addListener(new ChangeListener<Number>() {
           public void changed(ObservableValue<? extends Number> observable,
                                                                   Number oldValue, Number newValue) {

              // mỗi khi thumb thay đổi giá trị, thiết lập vị trí mới đặt picsBox  
               picsBox.setLayoutY(-newValue.doubleValue());
               if (newValue.doubleValue() < 172) {
                   pics[4].setVisible(false);
               } else {
                   pics[4].setVisible(true);
               }
               if (newValue.doubleValue() < 74) {
                   pics[3].setVisible(false);
               } else {
                   pics[3].setVisible(true);
               }
           }
       });

       Group root = new Group(picsBox, scrollBar);
       Scene scene = new Scene(root, 300, 250);
       scene.setFill(Color.BROWN);
       primaryStage.setTitle("Hello World!");
       primaryStage.setScene(scene);
       primaryStage.show();
   }
   public static void main(String[] args) {
       launch(args);
   }
}
Chạy ví dụ :

Không có nhận xét nào:

Đăng nhận xét