কম্পিউটার

কিভাবে আমরা জাভাতে স্বচ্ছ JDialog বাস্তবায়ন করতে পারি?


A JDialog ডায়ালগ এর একটি সাবক্লাস ক্লাস এবং এটি মিনিমাইজ ধরে রাখে না এবং সর্বোচ্চ করুন উইন্ডোর উপরের ডান কোণে বোতাম। মডাল নামে দুই ধরনের ডায়ালগ বক্স রয়েছে এবং নন-মোডা l একটি ডায়ালগ বক্সের ডিফল্ট বিন্যাস হল বর্ডার লেআউট।

নীচের প্রোগ্রামে, আমরা AlphaContainer কাস্টমাইজ করে একটি স্বচ্ছ JDialog বাস্তবায়ন করতে পারি ক্লাস করুন এবং paintComponent()কে ওভাররাইড করুন পদ্ধতি।

উদাহরণ

import java.awt.*;
import javax.swing.*;
public class TransparentDialog {
   public static void main (String[] args) {
      JDialog dialog = new JDialog();
      dialog.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
      dialog.getRootPane().setOpaque(false);
      dialog.setUndecorated(true);
      dialog.setBackground(new Color (0, 0, 0, 0));
      JPanel panel = new JPanel(new BorderLayout ());
      panel.setBackground(new Color (0, 0, 0, 64));
      dialog.add(new AlphaContainer(panel));
      JSlider slider = new JSlider();
      slider.setBackground(new Color(255, 0, 0, 32));
      panel.add (new AlphaContainer(slider), BorderLayout.NORTH);
      JButton button = new JButton("Label text");
      button.setContentAreaFilled(false);
      panel.add(button, BorderLayout.SOUTH);
      dialog.setSize(400, 300);
      dialog.setLocationRelativeTo(null);
      dialog.setVisible(true);
   }
}
class AlphaContainer extends JComponent {
   private JComponent component;
   public AlphaContainer(JComponent component){
      this.component = component;
      setLayout(new BorderLayout());
      setOpaque(false);
      component.setOpaque(false);
      add(component);
   }
   @Override
   public void paintComponent(Graphics g) {
      g.setColor(component.getBackground());
      g.fillRect(0, 0, getWidth(), getHeight());
   }
}

আউটপুট

কিভাবে আমরা জাভাতে স্বচ্ছ JDialog বাস্তবায়ন করতে পারি?


  1. কিভাবে আমরা জাভাতে একটি JPanel এর paintComponent() পদ্ধতি প্রয়োগ করতে পারি?

  2. জাভাতে কত ধরনের JDialog বক্স তৈরি করা যায়?

  3. কিভাবে আমরা জাভাতে একটি JToggleButton বাস্তবায়ন করতে পারি?

  4. কিভাবে আমরা জাভাতে JWindow ব্যবহার করে একটি স্প্ল্যাশ স্ক্রিন বাস্তবায়ন করতে পারি?