Khám phá
Trả lời
Hỏi
Đăng nhập

Làm trong suốt trong java swing

Chào các bác, e muốn làm trong suốt 1 số pannel đã đổ màu trong java swing. các bác giúp e với

  1. Bạn sẽ nhìn thấy những mũi tên trong mỗi trang câu hỏi. Chúng cho phép bạn bỏ phiếu thuận / bỏ phiếu chống theo sự liên quan của các câu hỏi / trả lời.
  2. Chỉnh sửa câu hỏi của bạn / câu trả lời nếu bạn muốn thay đổi hoặc cập nhật nó.
  3. Nếu bạn không hiểu điều gì đó về câu hỏi, để lại nhận xét hỏi. Những vùng cho câu trả lời chỉ được sử dụng cho câu trả lời.
  4. Nếu tác giả của một câu hỏi đánh dấu một câu trả lời như giải pháp, nhãn hiệu này sẽ được hiển thị.
  5. Nhấn vào đây để xem thêm chi tiết về những hoạt động của hệ thống!

1 trả lời

  • JPanel không hỗ trợ background trong suốt, mình biết 1 cách có thể giải quyết vấn đề này: bạn sử dụng hàm setOpaque(false) trong panel, tuy nhiên, bạn sẽ phải tự tạo background bằng hàm paintComponent. Dưới đây là đoạn code ví dụ:

    private class TransparentPanel extends JPanel {
        {
            setOpaque(false);
        }
        public void paintComponent(Graphics g) {
            g.setColor(getBackground());
            Rectangle r = g.getClipBounds();
            g.fillRect(r.x, r.y, r.width, r.height);
            super.paintComponent(g);
        }
    }

Không phải là câu trả lời bạn đang tìm kiếm? Tìm kiếm câu hỏi khác với các thẻ java swing transparent hoặc hỏi câu hỏi mới.