最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

基于java實現(xiàn)顏色拾色器并打包成exe

 更新時間:2023年10月25日 15:50:12   作者:一生何求603  
這篇文章主要為大家詳細介紹了如何基于java編寫一個簡單的顏色拾色器并打包成exe文件,文中的示例代碼講解詳細,需要的小伙伴可以跟隨小編一起學習一下

我們先來看看效果

1.源碼

廢話不多說,直接上代碼:

import javax.swing.*;  
import java.awt.*;  
import java.awt.event.ActionEvent;  
import java.awt.event.ActionListener;  
public class ColorPicker extends JFrame {  
    private JButton colorButton;  
    private JPanel colorPanel;  
    public ColorPicker() {  
        setTitle("顏色拾色器");  
        setSize(400, 200);  
        setDefaultCloseOperation(JFrame.*EXIT_ON_CLOSE*);  
        // 設置支持中文字符集的字體  
        Font chineseFont = new Font("微軟雅黑", Font.*PLAIN*, 16);  
        colorButton = new JButton("選擇顏色");  
        colorButton.setFont(chineseFont); // 使用中文支持的字體  
        colorPanel = new JPanel();  
        colorPanel.setPreferredSize(new Dimension(200, 100));  
        colorPanel.setBorder(BorderFactory.*createEtchedBorder*());  
        colorButton.addActionListener(new ActionListener() {  
            @Override  
            public void actionPerformed(ActionEvent e) {  
                Color selectedColor = JColorChooser.*showDialog*(null, "選擇顏色", colorPanel.getBackground());  
                if (selectedColor != null) {  
                    colorPanel.setBackground(selectedColor);  
                }  
            }  
        });  
        setLayout(new BorderLayout());  
        JPanel buttonPanel = new JPanel();  
        buttonPanel.setLayout(new FlowLayout(FlowLayout.*CENTER*));  
        buttonPanel.add(colorButton);  
        JPanel mainPanel = new JPanel();  
        mainPanel.setLayout(new BorderLayout());  
        mainPanel.add(buttonPanel, BorderLayout.*NORTH*);  
        mainPanel.add(colorPanel, BorderLayout.*CENTER*);  
        add(mainPanel, BorderLayout.*CENTER*);  
    }  
    public static void main(String[] args) {  
        SwingUtilities.*invokeLater*(new Runnable() {  
            @Override  
            public void run() {  
                ColorPicker colorPicker = new ColorPicker();  
                colorPicker.setVisible(true);  
                colorPicker.setLocationRelativeTo(null); // 屏幕中央顯示  
            }  
        });  
    }  
}

代碼解讀如下:

import javax.swing.*; // 導入Swing包,這是Java用于創(chuàng)建圖形用戶界面(GUI)的庫
import java.awt.*; // 導入AWT包,它包含構建和繪制用戶界面所需的類和方法
import java.awt.event.ActionEvent; // 導入ActionEvent類,它是Java中事件處理的一種類,用于處理用戶界面事件
import java.awt.event.ActionListener; // 導入ActionListener接口,它包含處理用戶界面事件的方法
public class ColorPicker extends JFrame { // 定義一個名為ColorPicker的類,該類繼承自JFrame類(Java的窗口類)
private JButton colorButton; // 定義一個私有的JButton對象,用于創(chuàng)建一個顯示“選擇顏色”的按鈕
private JPanel colorPanel; // 定義一個私有的JPanel對象,用于顯示所選擇的顏色
public ColorPicker() { // 定義ColorPicker類的構造函數(shù)
setTitle("顏色拾色器"); // 設置窗口的標題為“顏色拾色器”
setSize(400, 200); // 設置窗口的大小為400x200像素
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // 設置窗口關閉時的默認操作為退出程序
// 設置支持中文字符集的字體
Font chineseFont = new Font("微軟雅黑", Font.PLAIN, 16); // 創(chuàng)建一個字體對象,使用“微軟雅黑”字體、普通樣式(沒有粗體、斜體等效果),大小為16
colorButton = new JButton("選擇顏色"); // 創(chuàng)建一個新的JButton對象,顯示文本為“選擇顏色”
colorButton.setFont(chineseFont); // 為這個按鈕設置上述定義的字體
colorPanel = new JPanel(); // 創(chuàng)建一個新的JPanel對象,用于顯示所選擇的顏色
colorPanel.setPreferredSize(new Dimension(200, 100)); // 設置這個面板的首選大小為200x100像素
colorPanel.setBorder(BorderFactory.createEtchedBorder()); // 為這個面板設置一個邊框效果,樣式為刻蝕樣式的邊框
colorButton.addActionListener(new ActionListener() { // 為這個按鈕添加一個動作監(jiān)聽器,當按鈕被點擊時觸發(fā)相應的事件處理方法
@Override
public void actionPerformed(ActionEvent e) { // 這是事件處理方法,當按鈕被點擊時會被調用
Color selectedColor = JColorChooser.showDialog(null, "選擇顏色", colorPanel.getBackground()); // 使用JColorChooser類顯示一個對話框,讓用戶選擇顏色,選擇的顏色將被返回(selectedColor)
if (selectedColor != null) { // 如果用戶選擇了顏色(即selectedColor不為null)
colorPanel.setBackground(selectedColor); // 將這個面板的背景色設置為所選擇的顏色
}
}
});
setLayout(new BorderLayout()); // 為窗口設置布局,這里使用的是BorderLayout布局,可以將組件放在北、南、東、西和中心位置
JPanel buttonPanel = new JPanel(); // 創(chuàng)建一個新的JPanel對象,用于放置“選擇顏色”按鈕
buttonPanel.setLayout(new FlowLayout(FlowLayout.CENTER)); // 為這個按鈕面板設置布局,這里使用的是FlowLayout布局,按鈕會水平排列在中心位置(居中)
buttonPanel.add(colorButton); // 將“選擇顏色”按鈕添加到這個按鈕面板中
JPanel mainPanel = new JPanel(); // 創(chuàng)建一個新的JPanel對象,作為主要的面板
mainPanel.setLayout(new BorderLayout()); // 為這個主要面板設置布局,這里使用的是BorderLayout布局
mainPanel.add(but

運行ColorPicker即可,效果如下

2.將jar打包成exe

1.首先將ColorPicker打包成jar包,直接通過idea編輯器packge即可打包成功。

2.下載安裝JSmooth

JSmooth是一款開源的Java應用程序,主要用于為Java應用程序創(chuàng)建本機Windows啟動器。它可以將Java應用程序打包成一個獨立的可執(zhí)行文件(.exe),使得用戶無需事先安裝Java虛擬機(JVM)即可直接運行Java應用程序。JSmooth的優(yōu)點在于它能夠自動識別和利用已安裝的JVM,即使在沒有安裝JVM的計算機上,也可以通過JSmooth打包的exe文件運行Java應用程序。此外,JSmooth還可以對Java應用程序進行優(yōu)化,以提高其運行效率,包括壓縮應用程序大小、提高啟動速度等。除了上述功能,JSmooth還具有一些其他的特點。例如,它支持自定義應用程序圖標、版本信息等,使得打包后的應用程序更加美觀和易用。此外,JSmooth還提供了日志記錄和錯誤報告等功能,方便開發(fā)人員進行調試和故障排除??傊琂Smooth是一個非常實用的工具,它可以幫助開發(fā)人員將Java應用程序更加便捷地部署到Windows操作系統(tǒng)中,同時也提供了許多額外的功能來優(yōu)化和監(jiān)控Java應用程序的運行狀態(tài)。

3.雙擊打開JSmooth

4.點擊骨架,我從骨架中選擇Windows Wrapper(根據(jù)自己程序需要選擇

5.點擊可執(zhí)行文件,填寫生成EXE文件的文件名(路徑)和圖標

6.選擇主類的類型和jar的路徑

7.點擊小齒輪即可生成exe文件

以上就是基于java實現(xiàn)顏色拾色器并打包成exe的詳細內(nèi)容,更多關于java顏色拾色器的資料請關注腳本之家其它相關文章!

相關文章

  • java中isEmpty和isBlank的區(qū)別小結

    java中isEmpty和isBlank的區(qū)別小結

    Java中的isEmpty和isBlank都是用來判斷字符串是否為空的方法,但在不同的情況下有所區(qū)別,具有一定的參考價值,感興趣的可以了解一下
    2023-09-09
  • Java基于redis實現(xiàn)分布式鎖代碼實例

    Java基于redis實現(xiàn)分布式鎖代碼實例

    這篇文章主要介紹了Java基于redis實現(xiàn)分布式鎖代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-04-04
  • 簡潔實用的Java Base64編碼加密異常處理類代碼

    簡潔實用的Java Base64編碼加密異常處理類代碼

    這篇文章主要介紹了簡潔實用的Java Base64編碼加密異常處理類代碼,有一定的實用價值,需要的朋友可以參考下
    2014-07-07
  • SpringBoot整合新版SpringSecurity完整過程

    SpringBoot整合新版SpringSecurity完整過程

    Spring Security是保障Spring應用程序安全的強大框架,而新版的Spring Security引入了lambda表達式來配置,使得安全配置更加簡潔、優(yōu)雅,本文將介紹如何在Spring Boot項目中整合新版Spring Security,需要的朋友可以參考下
    2024-02-02
  • SpringBoot啟動報錯屬性循環(huán)依賴報錯問題的解決

    SpringBoot啟動報錯屬性循環(huán)依賴報錯問題的解決

    這篇文章主要介紹了SpringBoot啟動報錯屬性循環(huán)依賴報錯問題的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • JavaWeb文件下載功能實例代碼

    JavaWeb文件下載功能實例代碼

    這篇文章主要為大家詳細介紹了JavaWeb文件下載功能實例代碼,代碼簡單實用,感興趣的小伙伴們可以參考一下
    2016-06-06
  • spring5新特性全面介紹

    spring5新特性全面介紹

    本文將全面介紹 Spring 5。我將介紹 Java SE 8 和 Java EE 7 API 的基準升級、Spring 5 的新反應式編程模型、HTTP/2 支持,以及 Spring 通過 Kotlin 對函數(shù)式編程的全面支持。
    2020-10-10
  • java 如何將圖片按照原尺寸比例存入word中

    java 如何將圖片按照原尺寸比例存入word中

    這篇文章主要介紹了java 如何將圖片按照原尺寸比例存入word中的操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • jedis的return行為源碼解析

    jedis的return行為源碼解析

    這篇文章主要為大家介紹了jedis的return行為源碼解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-09-09
  • JavaSE多線程阻塞隊列實現(xiàn)代碼

    JavaSE多線程阻塞隊列實現(xiàn)代碼

    阻塞隊列是一種線程安全的隊列,可以用于多線程之間的數(shù)據(jù)傳遞和同步,下面這篇文章主要介紹了JavaSE多線程阻塞隊列的相關資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2025-12-12

最新評論

宿松县| 澜沧| 河池市| 武山县| 留坝县| 英超| 元阳县| 兰西县| 建阳市| 松滋市| 陆川县| 嘉义市| 台南市| 且末县| 玛纳斯县| 盘锦市| 永泰县| 调兵山市| 孝昌县| 新余市| 张家港市| 江阴市| 阜平县| 北川| 荣昌县| 太保市| 陆河县| 鄂伦春自治旗| 成都市| 虹口区| 岫岩| 山东省| 三都| 望城县| 天津市| 广州市| 化德县| 云南省| 芮城县| 桂阳县| 峨眉山市|