2013-01-06 25 views
6

Giả sử tôi đang sử dụng đoạn mã sau để nhắc nhở một thông báo lỗi trong ứng dụng swing đơn giản của tôi:Enable làm nổi bật văn bản trong xoay nhắn hộp

JOptionPane.showMessageDialog(null, message, "Error", JOptionPane.ERROR_MESSAGE); 

Có cách nào tôi có thể làm cho nó có thể cho người sử dụng đánh dấu phần văn bản (cho mục đích sao chép/dán)?

Rất cám ơn.

+0

gì "phần" bạn muốn để cho phép họ có thể để làm nổi bật? Thông điệp? Và những gì được tổ chức bởi biến tin nhắn? –

+0

Tôi có nghĩa là các phần của chuỗi tin nhắn được giữ bởi biến tin nhắn – sgrossman

+1

* "một thông báo lỗi trong ứng dụng xoay đơn giản của tôi:" * Nếu ứng dụng. đơn giản (đối với * người dùng *) nó có thể sẽ không hiển thị bất kỳ phần nào của thông báo lỗi do J2SE tạo ra, và thay vào đó có nút "Gửi báo cáo lỗi" sẽ sao chép/dán nhiều thông tin vào email, hoặc làm một cái gì đó thông minh hơn (ví dụ như gửi nó trực tiếp trở lại máy chủ của bạn). –

Trả lời

5

thử này

JTextArea textarea= new JTextArea("add your message here"); 
textarea.setEditable(true); 
JOptionPane.showMessageDialog(null, textarea, "Error", JOptionPane.ERROR_MESSAGE); 
+0

cảm ơn sự giúp đỡ của bạn :) – sgrossman

+0

bạn đang chào đón :) –

+0

Điều đó cho phép người dùng chỉnh sửa văn bản và trông ngu ngốc vì nó có nền trắng. –

2

JOptionPane có thể được xây dựng với bất kỳ đối tượng nào, không chỉ là một thông báo chuỗi. Vì vậy, bạn có thể xây dựng một JTextArea và chuyển nó cho JOptionPane như thông điệp của bạn. Điều đó sẽ cho phép dán bản sao.