java设置jdialog背景(java jdialog)

本文目录一览:

java JDialog界面制作

/**

*

* @author Administrator

*/

public class JFontChooser extends javax.swing.JDialog {

Font[] fonts = GraphicsEnvironment.getLocalGraphicsEnvironment().getAllFonts();

String formats[] = new String[]{“无格式”, “粗体”, “斜体”, “粗斜体”};

boolean initFlag = true;

/** Creates new form JFontChooser */

public JFontChooser(java.awt.Frame parent, boolean modal) {

super(parent, modal);

initComponents();

this.jFormattedTextField1.setValue(fonts[0].getSize());

fontNameList.setSelectedIndex(0);

this.jList1.setSelectedIndex(0);

}

private void reSetPreviewValue() {

Font fontTemp = fonts[fontNameList.getSelectedIndex()];

Font font = new Font(fontTemp.getFontName(), this.jList1.getSelectedIndex(), 20);

this.previewLabel.setText(this.fontNameLabel.getText() + ” ” + this.formatLabel.getText());

previewLabel.setFont(font);

// this.previewLabel.setText(“abc”);

}

/** This method is called from within the constructor to

* initialize the form.

* WARNING: Do NOT modify this code. The content of this method is

* always regenerated by the Form Editor.

*/

@SuppressWarnings(“unchecked”)

// editor-fold defaultstate=”collapsed” desc=”Generated Code”

private void initComponents() {

java.awt.GridBagConstraints gridBagConstraints;

jPanel1 = new javax.swing.JPanel();

previewLabel = new javax.swing.JLabel();

jPanel3 = new javax.swing.JPanel();

jScrollPane1 = new javax.swing.JScrollPane();

fontNameList = new javax.swing.JList();

fontNameLabel = new javax.swing.JLabel();

fontTitleLabel = new javax.swing.JLabel();

jPanel6 = new javax.swing.JPanel();

formatLabel = new javax.swing.JLabel();

fontformatTitleLabel = new javax.swing.JLabel();

jScrollPane2 = new javax.swing.JScrollPane();

jList1 = new javax.swing.JList(formats);

jPanel5 = new javax.swing.JPanel();

sizeTitleLabel = new javax.swing.JLabel();

jFormattedTextField1 = new javax.swing.JFormattedTextField();

jScrollPane3 = new javax.swing.JScrollPane();

jList2 = new javax.swing.JList();

jPanel4 = new javax.swing.JPanel();

jButton1 = new javax.swing.JButton();

jButton2 = new javax.swing.JButton();

setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);

setTitle(“FontChooser”);

getContentPane().setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout());

jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder(“预览”));

jPanel1.setLayout(new javax.swing.BoxLayout(jPanel1, javax.swing.BoxLayout.LINE_AXIS));

previewLabel.setFont(new java.awt.Font(“Arial”, 0, 12)); // NOI18N

previewLabel.setText(“abcdef”);

jPanel1.add(previewLabel);

getContentPane().add(jPanel1, new org.netbeans.lib.awtextra.AbsoluteConstraints(200, 190, 150, 50));

jPanel3.setLayout(new java.awt.GridBagLayout());

jScrollPane1.setPreferredSize(new java.awt.Dimension(0, 0));

DefaultListModel model = new DefaultListModel();

for (int i = 0; i fonts.length; i++) {

model.addElement(fonts[i].getFontName());

}

fontNameList.setModel(model);

fontNameList.addListSelectionListener(new javax.swing.event.ListSelectionListener() {

public void valueChanged(javax.swing.event.ListSelectionEvent evt) {

fontNameListValueChanged(evt);

}

});

jScrollPane1.setViewportView(fontNameList);

gridBagConstraints = new java.awt.GridBagConstraints();

gridBagConstraints.gridx = 0;

gridBagConstraints.gridy = 2;

gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;

gridBagConstraints.ipadx = 80;

gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;

gridBagConstraints.weightx = 1.0;

gridBagConstraints.weighty = 1.0;

jPanel3.add(jScrollPane1, gridBagConstraints);

fontNameLabel.setText(” “);

gridBagConstraints = new java.awt.GridBagConstraints();

gridBagConstraints.gridx = 0;

gridBagConstraints.gridy = 1;

gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;

gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;

jPanel3.add(fontNameLabel, gridBagConstraints);

fontTitleLabel.setText(“字体”);

gridBagConstraints = new java.awt.GridBagConstraints();

gridBagConstraints.gridx = 0;

gridBagConstraints.gridy = 0;

gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;

gridBagConstraints.ipady = 3;

gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;

jPanel3.add(fontTitleLabel, gridBagConstraints);

getContentPane().add(jPanel3, new org.netbeans.lib.awtextra.AbsoluteConstraints(8, 3, 190, 185));

jPanel6.setLayout(new java.awt.GridBagLayout());

formatLabel.setText(” “);

gridBagConstraints = new java.awt.GridBagConstraints();

gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;

jPanel6.add(formatLabel, gridBagConstraints);

fontformatTitleLabel.setText(“字体样式”);

gridBagConstraints = new java.awt.GridBagConstraints();

gridBagConstraints.gridx = 0;

gridBagConstraints.gridy = 1;

gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;

jPanel6.add(fontformatTitleLabel, gridBagConstraints);

jScrollPane2.setPreferredSize(new java.awt.Dimension(24, 24));

jList1.addListSelectionListener(new javax.swing.event.ListSelectionListener() {

public void valueChanged(javax.swing.event.ListSelectionEvent evt) {

jList1ValueChanged(evt);

}

});

jScrollPane2.setViewportView(jList1);

gridBagConstraints = new java.awt.GridBagConstraints();

gridBagConstraints.gridx = 0;

gridBagConstraints.gridy = 2;

gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;

gridBagConstraints.ipadx = 80;

gridBagConstraints.ipady = 135;

jPanel6.add(jScrollPane2, gridBagConstraints);

getContentPane().add(jPanel6, new org.netbeans.lib.awtextra.AbsoluteConstraints(200, 0, 107, 190));

jPanel5.setLayout(new java.awt.GridBagLayout());

sizeTitleLabel.setText(“大小”);

gridBagConstraints = new java.awt.GridBagConstraints();

gridBagConstraints.gridx = 0;

gridBagConstraints.gridy = 0;

gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL;

gridBagConstraints.ipady = 1;

gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;

jPanel5.add(sizeTitleLabel, gridBagConstraints);

jFormattedTextField1.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory(new javax.swing.text.NumberFormatter(java.text.NumberFormat.getIntegerInstance())));

jFormattedTextField1.addActionListener(new java.awt.event.ActionListener() {

public void actionPerformed(java.awt.event.ActionEvent evt) {

jFormattedTextField1ActionPerformed(evt);

}

});

gridBagConstraints = new java.awt.GridBagConstraints();

gridBagConstraints.gridx = 0;

gridBagConstraints.gridy = 1;

gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;

gridBagConstraints.ipadx = 34;

gridBagConstraints.ipady = -1;

gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;

jPanel5.add(jFormattedTextField1, gridBagConstraints);

jList2.setModel(new javax.swing.AbstractListModel() {

String[] strings = { “Item 1”, “Item 2”, “Item 3”, “Item 4”, “Item 5” };

public int getSize() { return strings.length; }

public Object getElementAt(int i) { return strings[i]; }

});

jScrollPane3.setViewportView(jList2);

gridBagConstraints = new java.awt.GridBagConstraints();

gridBagConstraints.gridx = 0;

gridBagConstraints.gridy = 2;

gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;

gridBagConstraints.ipadx = 17;

gridBagConstraints.ipady = 115;

gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;

gridBagConstraints.weightx = 1.0;

gridBagConstraints.weighty = 1.0;

jPanel5.add(jScrollPane3, gridBagConstraints);

getContentPane().add(jPanel5, new org.netbeans.lib.awtextra.AbsoluteConstraints(310, 0, 44, 190));

jPanel4.setBorder(javax.swing.BorderFactory.createEtchedBorder());

jPanel4.setLayout(new java.awt.GridBagLayout());

jButton1.setText(“确定”);

gridBagConstraints = new java.awt.GridBagConstraints();

gridBagConstraints.gridx = 0;

gridBagConstraints.gridy = 0;

gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;

jPanel4.add(jButton1, gridBagConstraints);

jButton2.setText(“取消”);

gridBagConstraints = new java.awt.GridBagConstraints();

gridBagConstraints.gridx = 0;

gridBagConstraints.gridy = 1;

gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHWEST;

jPanel4.add(jButton2, gridBagConstraints);

getContentPane().add(jPanel4, new org.netbeans.lib.awtextra.AbsoluteConstraints(350, 0, -1, -1));

pack();

}// /editor-fold

private void fontNameListValueChanged(javax.swing.event.ListSelectionEvent evt) {

int index = this.fontNameList.getSelectedIndex();

if (index = 0) {

this.fontNameLabel.setText(fontNameList.getSelectedValue().toString());

reSetPreviewValue();

}

}

private void jList1ValueChanged(javax.swing.event.ListSelectionEvent evt) {

int index = jList1.getSelectedIndex();

if (index = 0) {

this.formatLabel.setText(jList1.getSelectedValue().toString());

reSetPreviewValue();

}

}

private void jFormattedTextField1ActionPerformed(java.awt.event.ActionEvent evt) {

}

/**

* @param args the command line arguments

*/

public static void main(String args[]) {

java.awt.EventQueue.invokeLater(new Runnable() {

public void run() {

JFontChooser dialog = new JFontChooser(new javax.swing.JFrame(), true);

dialog.addWindowListener(new java.awt.event.WindowAdapter() {

public void windowClosing(java.awt.event.WindowEvent e) {

System.exit(0);

}

});

dialog.setVisible(true);

}

});

}

// Variables declaration – do not modify

private javax.swing.JLabel fontNameLabel;

private javax.swing.JList fontNameList;

private javax.swing.JLabel fontTitleLabel;

private javax.swing.JLabel fontformatTitleLabel;

private javax.swing.JLabel formatLabel;

private javax.swing.JButton jButton1;

private javax.swing.JButton jButton2;

private javax.swing.JFormattedTextField jFormattedTextField1;

private javax.swing.JList jList1;

private javax.swing.JList jList2;

private javax.swing.JPanel jPanel1;

private javax.swing.JPanel jPanel3;

private javax.swing.JPanel jPanel4;

private javax.swing.JPanel jPanel5;

private javax.swing.JPanel jPanel6;

private javax.swing.JScrollPane jScrollPane1;

private javax.swing.JScrollPane jScrollPane2;

private javax.swing.JScrollPane jScrollPane3;

private javax.swing.JLabel previewLabel;

private javax.swing.JLabel sizeTitleLabel;

// End of variables declaration

}

这个是用netBeans托好的界面,功能也完成了一部分,你参考一下,当初做了玩玩的,做了个半成品。

java如何改变JDialog的背景颜色?

java.lang.Object java.awt.Component java.awt.Container java.awt.Window java.awt.Dialog javax.swing.JDialog

Methods inherited from class java.awt.Component

setBackground

jDialog已添加两个JPanel,如何给jDialog添加背景图片啊,并且JPanel是透明的,求大神!

按照你的要求给jDialog添加背景图片的Java程序如下

注意 背景图片要放在Java当前项目的根目录下

比如你的当前项目名是project1, 在D:\project\project1\ 下就是你的当前项目的根目录(其中D:\project\只是打个比方,以你的实际目录为准)

import java.awt.BorderLayout;

import java.awt.Container;

import java.awt.Dimension;

import java.awt.Image;

import java.awt.Point;

import java.awt.Rectangle;

import java.awt.Toolkit;

import javax.swing.ImageIcon;

import javax.swing.JButton;

import javax.swing.JDialog;

import javax.swing.JLabel;

import javax.swing.JLayeredPane;

import javax.swing.JPanel;

public class D {

 D(){

  JDialog jDialog = new JDialog();

  jDialog.setSize(400, 200);

  JPanel jp1 = new JPanel();

  JPanel jp2 = new JPanel();

  Container container = jDialog.getContentPane();  

  JPanel panelBg=new JPanel();

  JPanel panelContent=new JPanel();

  JLayeredPane lp=new JLayeredPane();

  Dimension dimension = new Dimension(jDialog.getWidth(), jDialog.getHeight());  

  lp.setSize(dimension);  

  panelContent.setLayout(new BorderLayout());

  Image imageBg = Toolkit.getDefaultToolkit().getImage(“autumn1.jpg”);

  ImageIcon imageIcon = new ImageIcon(imageBg.getScaledInstance

    (dimension.width, dimension.height, Image.SCALE_FAST));

  JLabel jl1 = new JLabel(imageIcon);

  Point origin = new Point(0, 0);

  Rectangle rectangle = new Rectangle(origin, dimension);

  panelBg.setBounds(rectangle);

  panelBg.setLayout(new BorderLayout());

  panelBg.add(jl1,BorderLayout.CENTER);

  JLabel jl = new JLabel(“正在测量……”);

  jp1.add(jl);

  JButton jb = new JButton(“取消”);

  jp2.add(jb);

  jp1.setOpaque(false);

  jp2.setOpaque(false);

  panelContent.setBounds(rectangle);

  panelContent.add(jp1,BorderLayout.CENTER);

  panelContent.add(jp2,BorderLayout.SOUTH);

  panelContent.setOpaque(false);

  lp.add(panelBg,new Integer(0));

  lp.add(panelContent, new Integer(1));  

  container.add(lp, BorderLayout.CENTER);  

  jDialog.setUndecorated(true);

  jDialog.setLocationRelativeTo(null);

  jDialog.setVisible(true); 

 }

 public static void main(String[] args) {

  new D();

 }

}

运行结果

java swing Jpanel 怎么添加一个Jdialog弹出框

通过: 弹出框, 顾名思义就是刚开始看不见, 触发某个事件后弹出的一个框

所以 我们要让JPanel响应指定的事件然后弹出 . 比如常见的事件, 鼠标点击JPanel后弹出

弹出框. 一般有两种方法实现

方法一:JOptionPane 创建1个简单的弹出框.(代码量少, 效果简单)

方法二Dialog/JDialog 创建1个弹出框.(代码量长,可以实现复杂的效果)

效果图

参考代码

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

public class Demo extends JFrame {

JPanel jp;

static final String title = “Message”;

static final String content = “Eggs aren’t supposed to be green.”;

public Demo() {

jp = new JPanel();

jp.setBackground(Color.PINK);

jp.addMouseListener(new MouseAdapter() {

@Override

public void mouseClicked(MouseEvent e) {

//方法1

JOptionPane.showMessageDialog(null, content, title, JOptionPane.INFORMATION_MESSAGE);

//方法2

new MyDailog(title, content).setVisible(true);// 创建1个对话框,并且设置为可见

}

});

add(jp);

setTitle(“测试Demo”);// 标题

setSize(280, 280);// 窗口大小

setLocationRelativeTo(null);// 窗口居中

setDefaultCloseOperation(EXIT_ON_CLOSE);// 窗口点击关闭时,退出程序

setVisible(true);// 窗口可见

}

public static void main(String[] args) {

new Demo();

}

}

// 对话框类

class MyDailog extends JDialog implements ActionListener {

String title;

String content;

public MyDailog(String title, String content) {

this.title = title;

this.content = content;

ImageIcon icon = new ImageIcon(“tp.png”);// 创建1个图标实例

JLabel jlImg = new JLabel(icon);// 1个图片标签,显示图片

JLabel jl = new JLabel(content);// 1个文字标签,显示文本

jl.setForeground(Color.BLUE);// 设置文字的颜色为蓝色

JButton jb = new JButton(“确定”);// 创建1个按钮

jb.addActionListener(this);// 给按钮添加响应事件

add(jlImg);// 向对话框加入图片标签

add(jl);// 向对话框加入文字标签

add(jb);// 向对话框添加按钮

setLayout(new FlowLayout());// 对话框流式布局

setIconImage(icon.getImage());// 窗口左上角的小图标

setTitle(title);// 设置标题

setModal(true);// 设置为模态窗口

setSize(275, 135);// 设置对话框大小

setLocationRelativeTo(null);// 对话框局域屏幕中央

setResizable(false);// 对话框不可缩放

setDefaultCloseOperation(DISPOSE_ON_CLOSE);// 当对话框窗口的关闭按钮[X]被点击时,销毁对话框

}

// 当确定按钮被点击时会执行下面的方法

@Override

public void actionPerformed(ActionEvent e) {

if (e.getActionCommand().equals(“确定”)) {// 判断是不是确定按钮被点击

this.setVisible(false);// 对话框不可见

this.dispose();// 对话框销毁

}

}

}

java jdialog 怎么用

JDialog 对话框 , 一般用于满足比较复杂的弹出对话框, 比如 很多的输入框, 很多的按钮等情况

JOptionPane 也是对话框, 但是它一般只用于简单的提示, 输入, 选择, 警告 , 不能进行复杂的自定义.

下面写1个简单的使用JDialog来提示的对话框

import javax.swing.*;

import java.awt.event.*;

public class DialogFrame extends JFrame implements ActionListener {

JPanel jp1;

JTextField jtf;

JButton jb1;

public DialogFrame() {

jp1 = new JPanel();

JLabel jl1 = new JLabel(“请输入用户名”);

jtf = new JTextField(8);

jb1 = new JButton(“确定”);

jb1.addActionListener(this);

jp1.add(jl1);

jp1.add(jtf);

jp1.add(jb1);

add(jp1);

// 窗口属性设置

setTitle(“JFrame”);// 标题

setSize(380, 180);// 窗口大小

setLocationRelativeTo(null);// 窗口居中

setDefaultCloseOperation(EXIT_ON_CLOSE);// 窗口点击关闭时,退出程序

}

public static void main(String[] args) {

new DialogFrame().setVisible(true);

}

@Override

public void actionPerformed(ActionEvent e) {

if (jb1 == e.getSource()) {

String name = jtf.getText().trim();

if (name.equals(“”)) {// 验证是否输入了有效的字符串

// 字符串为””, 那么弹出对话框进行提示

new TPDialog(this, “提示”, true, “Sorry! 用户名必须填写,不能为空!”);

// 第一个参数 this 代表了本JFrame对象

// 第二个参数 标题

// 第三个参数 true表示模态窗口, 该窗口置顶,并且如果不关闭,无法点击其他的组件

// 第四个参数 表示了对话框要弹出的信息内容是什么

}

}

}

}

class TPDialog extends JDialog {

public TPDialog(JFrame jf, String title, boolean flag, String info) {

super(jf, title, flag); //调用父类的构造器

// 第一个参数 this 代表了本JFrame对象

// 第二个参数 标题

// 第三个参数 true表示模态窗口, 该窗口置顶,并且如果不关闭,无法点击其他的组件

JLabel jl = new JLabel(info);

add(jl);

setSize(230, 100);//大小

setLocationRelativeTo(null);//居中

setVisible(true);

setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);//点击关闭时,销毁对话框

}

}

效果显示

java中JDialog的用法?

Dialog1 实际上是创建一个对话框,实现代码如下:

class Dialog1 {

JDialog jd=new JDialog(jf,”JDialog窗体”,true);

Dialog1(){

jd.setSize(300,200);

Container c2=jd.getContentPane();

c2.setLayout(null);

JLabel jl=new JLabel(“只是一个对话框”);

jl.setBounds(0,-20,100,100);

JButton jbb=new JButton(“确定”);

jbb.setBounds(100,100,60,30);

c2.add(jl);

c2.add(jbb);

jbb.addActionListener(new ActionListener(){ //对按钮增加监听事件

@Override

public void actionPerformed(ActionEvent e) {

jd.dispose(); //关闭窗体

}

});

System.out.println(“OK”);

jd.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); //关闭对话框

}

}

原创文章,作者:EPL80,如若转载,请注明出处:https://www.506064.com/n/127332.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
EPL80的头像EPL80
上一篇 2024-10-03 23:15
下一篇 2024-10-03 23:15

相关推荐

  • java client.getacsresponse 编译报错解决方法

    java client.getacsresponse 编译报错是Java编程过程中常见的错误,常见的原因是代码的语法错误、类库依赖问题和编译环境的配置问题。下面将从多个方面进行分析…

    编程 2025-04-29
  • Java JsonPath 效率优化指南

    本篇文章将深入探讨Java JsonPath的效率问题,并提供一些优化方案。 一、JsonPath 简介 JsonPath是一个可用于从JSON数据中获取信息的库。它提供了一种DS…

    编程 2025-04-29
  • Java Bean加载过程

    Java Bean加载过程涉及到类加载器、反射机制和Java虚拟机的执行过程。在本文中,将从这三个方面详细阐述Java Bean加载的过程。 一、类加载器 类加载器是Java虚拟机…

    编程 2025-04-29
  • Java腾讯云音视频对接

    本文旨在从多个方面详细阐述Java腾讯云音视频对接,提供完整的代码示例。 一、腾讯云音视频介绍 腾讯云音视频服务(Cloud Tencent Real-Time Communica…

    编程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介绍

    本文将详细介绍Java Milvus SearchParam withoutFields的相关知识和用法。 一、什么是Java Milvus SearchParam without…

    编程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java语言中的一个版本,于2014年3月18日发布。本文将从多个方面对Java 8中某一周的周一进行详细的阐述。 一、数组处理 Java 8新特性之一是Stream…

    编程 2025-04-29
  • Python换背景后,边缘降噪怎么办?

    对于这个问题,我们可以从多个方面来解决。 一、背景替换的方法 在背景替换之前,我们需要先将图像的边缘进行处理,避免在替换过程中出现锯齿状的边缘。 首先,我们可以通过腐蚀和膨胀的操作…

    编程 2025-04-29
  • Java判断字符串是否存在多个

    本文将从以下几个方面详细阐述如何使用Java判断一个字符串中是否存在多个指定字符: 一、字符串遍历 字符串是Java编程中非常重要的一种数据类型。要判断字符串中是否存在多个指定字符…

    编程 2025-04-29
  • VSCode为什么无法运行Java

    解答:VSCode无法运行Java是因为默认情况下,VSCode并没有集成Java运行环境,需要手动添加Java运行环境或安装相关插件才能实现Java代码的编写、调试和运行。 一、…

    编程 2025-04-29
  • Java任务下发回滚系统的设计与实现

    本文将介绍一个Java任务下发回滚系统的设计与实现。该系统可以用于执行复杂的任务,包括可回滚的任务,及时恢复任务失败前的状态。系统使用Java语言进行开发,可以支持多种类型的任务。…

    编程 2025-04-29

发表回复

登录后才能评论