Java Swing仿“酷我音乐盒”界面,搭建简单通用前端框架


使用Java的Swing技术也可以做出很炫的界面,不过效率貌似不是很好,但是在现如今机子配置都超高的情况下,其应该是可以被接受的。。

程序截图如下:

 

部分代码如下:

 

/**
 * 
 */
package ikuwo.sys.main.view;

import ikuwo.comm.ui.CustSkinPanel;
import ikuwo.comm.ui.ViewDragHelper;
import ikuwo.comm.ui.ViewToolkit;
import ikuwo.comm.values.ValuesMgr;

import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.Cursor;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.Shape;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.geom.RoundRectangle2D;

import javax.swing.Box;
import javax.swing.Icon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;

import com.sun.awt.AWTUtilities;

/**
 * 系统的主窗体
 */
public class MainView extends JFrame implements ActionListener, MouseListener {
  
  //定义系统所需组件
    private Container conPanel;

    private JPanel headerPanel, headerTmpPanel1, headerTmpPanel2, footerPanel, leftPanel, rightPanel;

    private JLabel sysMenuLabel, sysMinLabel, sysMaxLabel, sysCloseLabel;

    ......省略
    
    /**
     * 构造器
     */
    public MainView() {
        init();
        buildElems();
        fitTogether();
    }

    /**
     * 初始化自己
     */
    private void init() {
        this.setTitle(ValuesMgr.SYS_VALUES.MAIN_VIEW_TITLE);
        this.setSize(ValuesMgr.SYS_VALUES.MAIN_VIEW_WIDTH, ValuesMgr.SYS_VALUES.MAIN_VIEW_HEIGHT);
        this.setIconImage(ViewToolkit.createImageIcon(ValuesMgr.SYS_VALUES.SYSTEM_ICON_IMG).getImage());
        this.setLocationRelativeTo(null);
        this.setUndecorated(true);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        // 设置圆角边框
        Shape shape = new RoundRectangle2D.Double(0, 0, ValuesMgr.SYS_VALUES.MAIN_VIEW_WIDTH, ValuesMgr.SYS_VALUES.MAIN_VIEW_HEIGHT, 9D, 9D);
        AWTUtilities.setWindowShape(this, shape);
        // 设置系统字体等
        // UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
        // UIManager.getLookAndFeelDefaults().put("defaultFont", new
        // Font("微软雅黑", Font.PLAIN, 12));
    }

    /**
     * 构建窗口元素
     */
    public void buildElems() {
      //.......
    }

    ......省略

  


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM