01/10/2018, 00:35
Kết nối Frame trong java swing
Mọi người cho em hỏi cách kết nối frame như trong hình với ạk. Khi bấm nút “thêm dược phẩm” thì hiện lên một bảng mới trên frame cũ ý ak. Em cảm ơn!
Bài liên quan
Ý bạn là JDialog …
Sử dụng JDialog ak bạn
cái bảng sau khi mình ấn “thêm dược phẩm mới” nó ở trên cái frame cũ luôn ý bạn. Chứ nó không phải là tạo ra một cái Frame mới
tạo 1 component chứa cái phần dưới, khi bấm thêm thì add component đó dzô, add thêm các constrait phù hợp để nó chia đôi được màn hình -> update frame -> done.
ngoài ra có thể thêm ngay từ đầu, nhưng setvisibility là hidden chẳng hạn, lúc nào cần thì hiện nó ra
Cái này còn tùy vào model của bảng bạn dùng thuộc custom hay default. Nhưng nói chung, sau khi click vào nút thêm mặt hàng thì bạn add đối tượng mặt hàng mới vào cái list, sau đó dùng phương thức UpdateUI() của đối tượng bảng để cập nhật thông tin hiển thị trên nó. vd: tênbảng.updateUI();
Solution ở trên mọi người đều nói hết rồi.
Mặc dù hầu hết các trường hiện tại vẫn dạy Java Swing. Nhưng nếu làm những bài tập mở rộng như này bạn nên tìm hiểu và làm bằng javaFX. Hoặc bỏ qua luôn desktop chuyển qua web.
Anh ơi anh có thể demo cho e một ví dụ đơn giản được không ạ. Em làm rồi nhưng không được
em đang làm cái project, làm cũng được khá nhiều rồi. Giờ không chuyển được anh ak.
là sao a, e đang học java swing trên trường nghe vậy hơi nản thế javaFx cũng giống swing à nó hơn swing ở điểm nào vậy ?
nói demo thì mình hơi ngại viết cho bạn, nhưng chỉ nói ý tưởng cho bạn rồi tự triển khai thôi. Kiến thức cần phải nắm vững để thực hiện bao gồm:
bạn kết hợp show/hide hoặc add/remove component con cho phù hợp dựa theo các event cụ thể là ra được đúng ý mình thôi.
public DemoSwing() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLocationRelativeTo(null);
createFrame();
setResizable(false);
setSize(800, 700);
setVisible(true);
}
// Anh xem hộ em sai chỗ nào với ajh, em code mà lúc mình remoAll cái panel đi nó không mất anh ak. Mình thêm thì nó lại nối vào cái panel