IDEA
官网下载IDEA社区版
https://www.jetbrains.com/idea/download/#section=windows
设置中文
设置插件界面搜索Chinese插件并安装,然后重启

创建项目
创建Maven项目,设置项目结构SDK

Java doc
https://docs.oracle.com/en/java/javase/index.html
可阅读在线帮助文档
使用Swing
[[IDEA 快速开发 JAVA SWING 教程]]
[[idea 的 Java 窗体可视化工具 Swing UI Designer 的简单使用(一)]]
[[idea 的 Java 窗体可视化工具 Swing UI Designer 的简单使(二)]]
[[swing 的几种布局]]
GUI设计器
使用GUI设计器生成界面

GUI设计器可将GUI生成到二进制类文件或Java源代码

Swing form文件
有时界面不好调整,可直接修改form文件
Swing与多线程
Swing线程之SwingUtilities.invokeLater解释
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
}
});
自定义标题栏
[[java swing 自定义标题栏,缩放窗口,阴影窗口]]
其中DragEvent 拖拽工具类比较有用
外观修改
[[Swing 外观 抗锯齿 字体设置]]
package com.founder.MediaxFileTool.UI;
import javax.swing.*;
import javax.swing.plaf.ColorUIResource;
import javax.swing.plaf.FontUIResource;
import java.awt.*;
import java.util.HashMap;
import java.util.Map;
public class UIs {
private static final String FALLBACK_FONT_FAMILY_NAME = Font.SANS_SERIF;
private static final Map<String, String> FONT_FAMILY_NAMES = new HashMap<String, String>();
private static final String[] BEST_FONT_FAMILIES = {
"微软雅黑", "arial", "sans-serif"
};
private static final int BEST_FONT_SIZE = 12; // 12px
static {
GraphicsEnvironment env = GraphicsEnvironment.getLocalGraphicsEnvironment();
String[] fontFamilyNames = env.getAvailableFontFamilyNames();
for (String fontFamilyName : fontFamilyNames) {
FONT_FAMILY_NAMES.put(fontFamilyName.toLowerCase(), fontFamilyName);
}
if (!FONT_FAMILY_NAMES.containsKey("serif")) {
FONT_FAMILY_NAMES.put("serif", Font.SERIF);
}
if (!FONT_FAMILY_NAMES.containsKey("sans-serif")) {
FONT_FAMILY_NAMES.put("sans-serif", Font.SANS_SERIF);
}
}
public static void enableAntiAliasing() {
System.setProperty("awt.useSystemAAFontSettings", "on");
System.setProperty("swing.aatext", "true");
}
public static String getLookAndFeel() {
try {
for (UIManager.LookAndFeelInfo info : UIManager.getInstalledLookAndFeels()) {
if ("Nimbus".equals(info.getName())) {
return info.getClassName();
}
}
} catch (Exception ignore) {
}
return UIManager.getCrossPlatformLookAndFeelClassName();
}
public static String getFontFamily(String[] fontFamilies) {
for (String fontFamily : fontFamilies) {
fontFamily = fontFamily.toLowerCase();
if (FONT_FAMILY_NAMES.containsKey(fontFamily


1219

被折叠的 条评论
为什么被折叠?



