如何用IntelliJ IDEA里面的GUI功能编写界面
2个回答
推荐于2016-09-30 · 知道合伙人互联网行家
关注
展开全部
试用了一下IntelliJ,使用下来还是比较爽的,最后我这个很少花钱买软件的人,也在oschina上买了个人版。IDE毕竟是码农干活的家伙,想想也值了。使用的时候有一些心得,记录下来。
调整界面为酷酷的黑色
Preferences=>Appearance=>theme=>Darcula
检出项目:
VCS=>Checkout From Version Control,maven项目会被自动识别出来。
设置快捷键:
Preferences=>keymaps,有很多套方案,当然即使选择Eclipse也还是有很多和Eclipse不同的地方。
自动补全:
Mac下默认是clt+space,可以使用keymaps=>Main menu=>Code=>Competion设置。比Eclipse好的地方是Spring、Maven的xml,乃至freemarker模板以及iBatis的sqlmap都支持高亮和自动补全。
去除自动补全的大小写敏感:
不知道多少童鞋和我一样被Eclipse惯袱功递嘉郛黄店萎锭联坏了,使用自动补全完全不注意大小写的,IntelliJ默认区分大小写,很是让人难过。不过在Editor=>Code Completion里把Case sensitive completion设置为None就可以了。
自动展开目录
Eclipse有个打开文件就自动展开目录的功能,在IntelliJ里从Project左边栏的齿轮上选择Autoscroll to Source和Autoscroll from Source都勾选上即可。
使用Tomcat运行web项目:
需安装插件:Tomcat and TomEE intergration
选择Run=>Edit Configurations,点+,选tomcat server,Deloyment选择对应artifact。
项目间文件复制
IntelliJ里的工作空间是Project,不同Project之间是没有什么关系的。在一个Project里copy&paste,会弹出对话框,让你选择目标文件夹。也就是说,并没有跨Project的复制,而是从源Project把文件复制出去。
自动编译
IntelliJ默认是不会自动编译项目的,所以在run之前会有个make的过程,习惯自动编译项目的可以在这里打开:Compiler=>make project automatically。因为IntelliJ项目空间不大,所以开启之后也不会像Eclipse一样出现build workspace很久的情况。
Debug
debug最好不要使用method breakpoint,会导致启动异常缓慢,博主之前就不小心启动了method breakpoint,然后进入调试要花掉几分钟的时间。IntelliJ断点可以设置Condition,其实Eclipse也可以,只不过没有这么明显,同时IntelliJ可以在Condition进行代码提示。
远程Debug
Run=>Edit Configurations,选择Add=>remote,然后你懂的。
File Template
与Eclipse的Code Template类似,只不过IntelliJ内置变量全部为大写,例如:${NAME}。可以使用#parse (“File Header.java”)这种格式来导入另一个文件,跟jsp include的作用一样,实现复用的一种方式吧。没有导入/导出,有点不太方便。
Live Template
用惯了Eclipse快捷键的人可能会不习惯,sysout、foreach等快捷方式找不到了,main方法也无法自动补全了,其实这个在IntelliJ中有一个异常强大的模块Live Template来实现。
例如,在class中尝试psvm+tab,则会发现main方法产生了;输入iter+tab,则生成了foreach语句。
live template还有一个surround的用法,选中某个变量,键入ctl+alt+j两次,则会出现自动补全的菜单。
此外,还可以自定义Live Template。Code Snippet技术应用也挺普遍的,IntelliJ的Live Template优点是内置了一些智能的变量和函数,可以做到一些语义级别的分析和运用。
调整界面为酷酷的黑色
Preferences=>Appearance=>theme=>Darcula
检出项目:
VCS=>Checkout From Version Control,maven项目会被自动识别出来。
设置快捷键:
Preferences=>keymaps,有很多套方案,当然即使选择Eclipse也还是有很多和Eclipse不同的地方。
自动补全:
Mac下默认是clt+space,可以使用keymaps=>Main menu=>Code=>Competion设置。比Eclipse好的地方是Spring、Maven的xml,乃至freemarker模板以及iBatis的sqlmap都支持高亮和自动补全。
去除自动补全的大小写敏感:
不知道多少童鞋和我一样被Eclipse惯袱功递嘉郛黄店萎锭联坏了,使用自动补全完全不注意大小写的,IntelliJ默认区分大小写,很是让人难过。不过在Editor=>Code Completion里把Case sensitive completion设置为None就可以了。
自动展开目录
Eclipse有个打开文件就自动展开目录的功能,在IntelliJ里从Project左边栏的齿轮上选择Autoscroll to Source和Autoscroll from Source都勾选上即可。
使用Tomcat运行web项目:
需安装插件:Tomcat and TomEE intergration
选择Run=>Edit Configurations,点+,选tomcat server,Deloyment选择对应artifact。
项目间文件复制
IntelliJ里的工作空间是Project,不同Project之间是没有什么关系的。在一个Project里copy&paste,会弹出对话框,让你选择目标文件夹。也就是说,并没有跨Project的复制,而是从源Project把文件复制出去。
自动编译
IntelliJ默认是不会自动编译项目的,所以在run之前会有个make的过程,习惯自动编译项目的可以在这里打开:Compiler=>make project automatically。因为IntelliJ项目空间不大,所以开启之后也不会像Eclipse一样出现build workspace很久的情况。
Debug
debug最好不要使用method breakpoint,会导致启动异常缓慢,博主之前就不小心启动了method breakpoint,然后进入调试要花掉几分钟的时间。IntelliJ断点可以设置Condition,其实Eclipse也可以,只不过没有这么明显,同时IntelliJ可以在Condition进行代码提示。
远程Debug
Run=>Edit Configurations,选择Add=>remote,然后你懂的。
File Template
与Eclipse的Code Template类似,只不过IntelliJ内置变量全部为大写,例如:${NAME}。可以使用#parse (“File Header.java”)这种格式来导入另一个文件,跟jsp include的作用一样,实现复用的一种方式吧。没有导入/导出,有点不太方便。
Live Template
用惯了Eclipse快捷键的人可能会不习惯,sysout、foreach等快捷方式找不到了,main方法也无法自动补全了,其实这个在IntelliJ中有一个异常强大的模块Live Template来实现。
例如,在class中尝试psvm+tab,则会发现main方法产生了;输入iter+tab,则生成了foreach语句。
live template还有一个surround的用法,选中某个变量,键入ctl+alt+j两次,则会出现自动补全的菜单。
此外,还可以自定义Live Template。Code Snippet技术应用也挺普遍的,IntelliJ的Live Template优点是内置了一些智能的变量和函数,可以做到一些语义级别的分析和运用。
2015-05-30
展开全部
命令行参数上给出URL
import javax.swing.*;
import java.awt.*;
import java.io.*;
/**
* @author Hardneedl
*/
final class HTMLDemo extends JFrame {
public String getTitle() {return "html demo";}
static private final Dimension size = new Dimension(600, 400);
public Dimension getPreferredSize() {return size;}
public Dimension getMaximumSize() {return size;}
public Dimension getMinimumSize() {return size;}
public Dimension getSize() {return size;}
private String u;
HTMLDemo(String url) throws HeadlessException {
u=url;
attachListeners();
doLay();
}
private void attachListeners() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
private void doLay() {
Container container = getContentPane();
try {
container.add(new JScrollPane(new JEditorPane(u)));
} catch(IOException e) {
e.printStackTrace();
}
pack();
setVisible(true);
}
public static void main(final String[] args) {
SwingUtilities.invokeLater(new Runnable(){
public void run() {new HTMLDemo(args[0]);}
});
}
}
import javax.swing.*;
import java.awt.*;
import java.io.*;
/**
* @author Hardneedl
*/
final class HTMLDemo extends JFrame {
public String getTitle() {return "html demo";}
static private final Dimension size = new Dimension(600, 400);
public Dimension getPreferredSize() {return size;}
public Dimension getMaximumSize() {return size;}
public Dimension getMinimumSize() {return size;}
public Dimension getSize() {return size;}
private String u;
HTMLDemo(String url) throws HeadlessException {
u=url;
attachListeners();
doLay();
}
private void attachListeners() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
private void doLay() {
Container container = getContentPane();
try {
container.add(new JScrollPane(new JEditorPane(u)));
} catch(IOException e) {
e.printStackTrace();
}
pack();
setVisible(true);
}
public static void main(final String[] args) {
SwingUtilities.invokeLater(new Runnable(){
public void run() {new HTMLDemo(args[0]);}
});
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |