2010-04-07 39 views
22

Tôi đang làm việc trên một dự án sử dụng Java Swing. Giao diện mặc định của GUI Java Swing rất nhàm chán. Có cách nào tôi có thể sử dụng giao diện tốt hơn không? Một cái gì đó như trên các trang web ...Làm thế nào để cải thiện giao diện của GUI GUI JAVA?

+1

chuyển sang Silverlight :-) (đó là trò đùa) – Dani

+0

Xin chào tất cả các câu trả lời của bạn rất hữu ích. Bây giờ tôi có một số thức ăn cho bộ não của tôi. Tôi sẽ thử tất cả những điều này và chọn lựa chọn nào có vẻ tốt hơn;). Cảm ơn rất nhiều ! – Mandar

Trả lời

50

Bạn có thể thiết lập giao diện để phản ánh nền tảng:

try { 
    UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName()); 
} catch (Exception e) { 
    e.printStackTrace(); 
} 

Nếu đây là không đủ tốt đẹp cho bạn, hãy nhìn vào SWT for Eclipse.

+3

Có lẽ là đề xuất rất đơn giản nhất.Với may mắn, nó có thể chính xác là những gì mà OP muốn! –

+0

hi frederik tôi đã thử điều này. cảm ơn rất tốt vì sự giúp đỡ của bạn. đây là thứ tôi muốn. – Mandar

+0

Rất vui được trợ giúp :) –

1

Bạn có thể xem here. Tôi googled về chủ đề java swing.

Điều đó nói rằng, nếu bạn đang thực hiện một dự án sở thích thay đổi LAF thì không có vấn đề gì. Nếu bạn đang làm phần mềm cho bạn bè của bạn, nó cũng không phải là một vấn đề. Nếu bạn làm cho phần mềm cho khách hàng giữ mặc định swing. Nó hoạt động tốt và không quá thú vị :)

+0

Thực ra, tôi muốn nói rằng việc thay đổi từ Metal L & F mặc định sang hệ thống L & F sẽ tốt hơn cho hầu hết khách hàng. –

+0

@Michael Borgwardt OK. Tôi đồng ý với bạn ở đó. Những gì tôi thực sự đã cố gắng để nói là một GUI nhàm chán không thực sự là một vấn đề đối với hầu hết người dùng, họ thực sự thích một cái gì đó tiêu chuẩn. – extraneon

+2

Tôi nghĩ đó là một tuyên bố công bằng. Kinh nghiệm của tôi là người dùng cảm thấy sợ hãi khi nhìn thấy một gui anh ta không quen thuộc. Họ cần một cái gì đó mà họ có thể liên quan đến. Mà cũng cải thiện khả năng sử dụng. –

1

Một tùy chọn khác là Plastic Look-and-feel. Nó cung cấp cho các ứng dụng Swing một cái nhìn giống như XP và cung cấp rất nhiều tùy chọn tùy chỉnh.

EDIT: Tôi vừa nhận thấy rằng hình ảnh trên trang đó bị hỏng. Nếu bạn nhấp qua số JGoodies Looks page, ít nhất bạn sẽ thấy 3 ví dụ về những gì bạn có thể thực hiện với những giao diện đó.

2

nếu bạn tốt với cửa hàng ảnh bạn có thể khai báo JFrame như undecorated và tạo hình ảnh của riêng bạn để phục vụ như giao diện tùy chỉnh của bạn.

trong ví dụ này tham chiếu đến khung hình JFrame.

JFrame frame = new JFrame(); 
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
frame.setSize(800, 600); 
//If you want full screen enter frame.setExtendedState(JFrame.MAXIMIZE_BOTH); 
frame.setUndecorated(true); 

bây giờ mà các JFrame có biên giới và tùy chỉnh riêng của mình GUI, nếu bạn định nghĩa các nút tùy chỉnh của riêng bạn cho minimize, maximize, và thoát khỏi bạn cần phải đặt một JPanel qua các nút và tuyên bố những gì các nút sẽ làm trong một chức năng lắng nghe hành động (lol xin lỗi ... Tôi không biết nếu nó được gọi là chức năng như c + + hoặc lớp ...) ví dụ chúng tôi sẽ tham khảo các JPanel như bảng điều khiển và chúng tôi sẽ thiết lập một nút thoát.

panel.addActionListener(new ActionListener(){ 
@Override 
public void actionPerformed(ActionEvent e){ 
System.exit(JFrame.EXIT_ON_CLOSE); 
}); 
} 
Các vấn đề liên quan