/*这个程序主要更换JAVA的界面风格的
 * 后两个Mac,CTK风格要在相关的操作系统上才能实现
 */
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;

public class JFrameButton extends JFrame implements ActionListener
{
    JButton windLook = new JButton("Windows 窗口");
    JButton unixLook = new JButton("Unix 窗口");
    JButton javaLook = new JButton("Java 窗口");
    JButton macLook = new JButton("Mac 窗口");
    JButton gtkLook = new JButton("GTK 窗口");
    JLabel label = new JLabel("选择界面的风格");
 public JFrameButton()
 {
  this.setLayout(new FlowLayout());
  this.add(label);
  this.add(windLook);
  windLook.addActionListener(this);
  this.add(unixLook);
  unixLook.addActionListener(this);
  this.add(javaLook);
  javaLook.addActionListener(this);
  this.add(macLook);
  macLook.addActionListener(this);
  this.add(gtkLook);
  gtkLook.addActionListener(this);

}

public void actionPerformed(ActionEvent e)
 {
  String look = "javax.swing.plaf.metal.MetalLookAndFeel";
  if(e.getSource()==javaLook)
   look = "javax.swing.plaf.metal.MetalLookAndFeel";
  else if(e.getSource()==windLook)
   look = "com.sun.java.swing.plaf.windows.WindowsLookAndFeel";
  else if(e.getSource()==unixLook)
   look = "com.sun.java.swing.plaf.motif.MotifLookAndFeel";
  else if(e.getSource()==macLook)
   look = "com.sun.java.swing.plaf.mac.MacLookAndFeel";
  else if(e.getSource()==gtkLook)
   look = "com.sun.java.swing.plaf.gtk.GTKLookAndFeel";

try
  {
   UIManager.setLookAndFeel(look);
   SwingUtilities.updateComponentTreeUI(this);
  }
  catch(Exception ex)
  {
   System.out.println("Exception:"+ex); 
  }
 }
 public static void main(String[] args)
 {
  JFrameButton jwb = new JFrameButton();
  jwb.setTitle("界面风格设置");
  jwb.setLocationRelativeTo(null);//窗口居中显示
  jwb.setResizable(false);
  jwb.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  jwb.setSize(600,100);
  jwb.setVisible(true);
 }
}

程序运行的效果:

更换JAVA程序的界面风格的更多相关文章

  1. 【JAVA】SWING_ 界面风格

    在java中,界面外观的管理是由UIManager类来管理的.不同的系统上安装的外观不一样 ,默认的是java的跨平台外观. 1.获取系统所有外观 import javax.swing.*; impo ...

  2. JAVA与图形界面开发(Applet应用程序、AWT库、Swing)

    Applet 1)简单说,Applet就是嵌入到网页中的小程序,Java代码. 2)编写Applet程序,要继承JApplet类,并根据自己需要覆写相关方法(init.start.stop.destr ...

  3. Qt - 设置程序界面风格(现成的QMacStyle等等)

    类的继承关系: QMotifStyle:OSF(开放基金协会)开发的一个工业标准的GUI(图形用户接口): QCDEStyle:公共桌面环境(Common Desktop Environment)的缩 ...

  4. JAVA程序员面试宝典

    程序员面试之葵花宝典 面向对象的特征有哪些方面    1. 抽象:抽象就是忽略一个主题中与当前目标2. 无关的那些方面,3. 以便更充分地注意与当前目标4. 有关的方面.抽象并不5. 打算了解全部问题 ...

  5. Java程序员面试之葵花宝典

    程序员面试之葵花宝典 1.面向对象的特征有哪些方面   抽象:抽象就是忽略一个主题中与当前目标 无关的那些方面, 以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题,而 只是选择其中的一部 ...

  6. JAVA程序员工作常用英语(细心整理)

    基础----进阶 A. array数组accessible 可存取的 area面积audio 音频 addition 加法 action 行动 arithmetic 算法adjustment 调整 a ...

  7. 【计项02组01号】Java版图形界面计算器

    Java版图形界面计算器1.0版本 项目分析[1.0] 组成部分 代码结构 (1)窗口的创建 在<JDK 核心 API>中我们提到,创建一个窗口需要使用 JFrame 类.在本实验中,我们 ...

  8. Java程序员岗位

    Java程序员岗位面试题有哪些?   1.面向对象的特征有哪些方面(1)抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题,而只是选择 ...

  9. Java程序员转Android开发必读经验分享

    小编最近几日偷偷的发现部分Java程序员想转安卓开发,故此加紧补充知识,为大家搜集资料,积极整理前人的经验,希望可以给正处于困惑中的你,带来些许的帮助. 啰哩啰嗦的说说Java和Android程序的区 ...

随机推荐

  1. 2020牛客寒假算法基础集训营3 - G. 牛牛的Link Power II(线段树)

    题目链接:牛牛的Link Power II 题意:给你一个只含$0$和$1$的串,定义串的$Link$值为串中两个的$1$之间的距离的和,$(u,v)$和$(v,u)$被看认为是同一对,有$m$次操作 ...

  2. 微信HTTP公告

  3. SpringCloud全家桶学习之Feign负载均衡----Feign(四)

    一.Feign概述 (1)Feign是什么? 官网地址:https://projects.spring.io/spring-cloud/spring-cloud.html#spring-cloud-f ...

  4. Python - for循环的本质,迭代器,可迭代对象

    参考 https://foofish.net/how-for-works-in-python.html for循环可以迭代一个可迭代(iterable)的对象 原理 生成这个可迭代对象(实现了__it ...

  5. VBA 学习笔记 - 运算符

    学习资料:https://www.yiibai.com/vba/vba_operators.html 算术运算符 加减乘除模指,这个没啥特别的. 比较运算符 和 Lua 相比,判断相等变成了一个等于号 ...

  6. 实验1 GIT代码版本管理

    (一)实验目的: 1)了解分布式分布式版本控制系统的核心机理: 2) 熟练掌握git的基本指令和分支管理指令: (二)实验内容: 1)安装git 2)初始配置git ,git init git sta ...

  7. vue-lazyload 的使用(vue图片懒加载)

    github地址:https://github.com/hilongjw/vue-lazyload npm i vue-lazyload -S 或者 <script src="http ...

  8. windows10 通过ssh访问 linux

    安装openssh服务 Win10其实自带OpenSSH 没有的话,点击上面的添加找到并安装 在服务里设置对应服务开机启动 添加服务器到已知主机 ssh-keygen -R 你的服务器ip 连接Lin ...

  9. 【代码总结】GD库中简单的验证码

    大体思路: 代码部分: <?php //1.创建画布 $img = imagecreatetruecolor(100,30); //2.设置颜色 值越小,颜色越深 $color1 = image ...

  10. HDU 1035 Robot Motion(dfs + 模拟)

    嗯... 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1035 这道题比较简单,但自己一直被卡,原因就是在读入mp这张字符图的时候用了scanf被卡. ...