‘壹’ java图形界面设计问题
要弄清楚是图形界面还是一般的图片资源?
api 里是不带音乐、图片这类资源文件的,你 setImage 之类的方法就是选取的本地文件。这个不用多说了。
但是如果你是要改界面元素的话,swing 库的图形界面是 Java 自绘的,界面画成什么样是由 LookAndFeels 类决定的。你可以用默认的几个 LookAndFeels,也可以从网上下载别人做的包,你也可以自己做。
如果你要自己画 LookAndFeels 的话,你要知道你画的是控件。作为一个完整的界面包,窗体的模样、最小化、最大化、还原、关闭 四个控制按钮、其他的如按钮、静态文本、动态文本、画布等等,只要 swing 库中有的那些控件类你都要实现。包括按钮焦点、按下、鼠标经过的样子都需要画出来。
‘贰’ java图形界面编程
执行java Applt小程序不是这样运行的。你必须建一个html文件,然后在输入
<applet code="ButtonDemo.class"
width=320 height=180>
</applet>
其中code是你编译ButtonDemo类是生成的class文件。然后在cmd中找到html文件所在的路径下输入appletviewer xxx.html
就可以运行了
‘叁’ java图形API是指什么
编出来的java程序在虚拟机上运行,没有虚拟机,java运行不了,api是开发java用的,可以理解成一本字典,写程序离不了,除非不干了,比如你想对一堆乱七八糟的数字排顺序,调用api里面的sort方法就排好了
‘肆’ 怎样用java编写图形界面的Application程序
java编写图形界面需要用到swing等组件,可以在eclipse中安装windowbuilder来开发窗体,自动生成窗体代码,然后自己再根据需要修改,如:
package mainFrame;
import java.awt.EventQueue;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JCheckBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
import javax.swing.SwingConstants;
import javax.swing.UIManager;
import javax.swing.;
import javax.swing.border.EmptyBorder;
public class Mian_login extends JFrame {
private JPanel contentPane;
private JTextField text_LoginName;
private JPasswordField Login_password;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
@Override
public void run() {
try {
Mian_login frame = new Mian_login();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public Mian_login() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(500, 200, 443, 300);
setResizable(false);
setTitle("登 录");
/*获取系统按钮样式*/
String lookAndFeel = UIManager.getSystemLookAndFeelClassName();
try {
UIManager.setLookAndFeel(lookAndFeel);
} catch (ClassNotFoundException e1) {
e1.printStackTrace();
} catch (InstantiationException e1) {
e1.printStackTrace();
} catch (IllegalAccessException e1) {
e1.printStackTrace();
} catch ( e1) {
e1.printStackTrace();
}
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
JPanel panel = new JPanel();
panel.setOpaque(false);
panel.setBounds(0, 0, 434, 272);
contentPane.add(panel);
panel.setLayout(null);
JButton btn_Login = new JButton("u767Bu5F55");
btn_Login.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
}
});
btn_Login.setBounds(88, 195, 70, 23);
panel.add(btn_Login);
JButton btn_cancel = new JButton("u53D6u6D88");
btn_cancel.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
dispose();
}
});
btn_cancel.setBounds(268, 195, 70, 23);
panel.add(btn_cancel);
JLabel lblNewLabel_name = new JLabel("u7528u6237u540D");
lblNewLabel_name.setHorizontalAlignment(SwingConstants.CENTER);
lblNewLabel_name.setOpaque(true);
lblNewLabel_name.setBounds(88, 48, 70, 23);
panel.add(lblNewLabel_name);
JLabel lblNewLabel_passwd = new JLabel("u5BC6u7801");
lblNewLabel_passwd.setHorizontalAlignment(SwingConstants.CENTER);
lblNewLabel_passwd.setOpaque(true);
lblNewLabel_passwd.setBounds(88, 102, 70, 23);
panel.add(lblNewLabel_passwd);
JCheckBox chckbx_remember = new JCheckBox("u8BB0u4F4Fu5BC6u7801");
chckbx_remember.setBounds(102, 150, 84, 23);
panel.add(chckbx_remember);
text_LoginName = new JTextField();
text_LoginName.setBounds(182, 48, 156, 23);
panel.add(text_LoginName);
text_LoginName.setColumns(10);
Login_password = new JPasswordField();
Login_password.setBounds(182, 102, 156, 23);
panel.add(Login_password);
JCheckBox chckbx_AutoLogin = new JCheckBox("u81EAu52A8u767Bu5F55");
chckbx_AutoLogin.setBounds(233, 150, 84, 23);
panel.add(chckbx_AutoLogin);
JLabel Label_background = new JLabel("");
Label_background.setIcon(new ImageIcon("E:\JAVA_workplace\0002-u754Cu9762u8BBEu8BA1\images\background3.jpg"));
Label_background.setBounds(0, 0, 437, 272);
contentPane.add(Label_background);
}
}
‘伍’ 关于java 里面的api问题编程
如何学习编程:
1. 必须先学习该语言的语法
2.我们要像学习汉语一样掌握成语一样掌握大量的API
3.也要学会分析与解决问题。养成良好的编程习惯与风格
java工具软件的介绍与使用:
sun公司没有提供图形化的开发环境,他把开发软件让给了合作伙伴。
Borland公司的Jbuilder IBM 的 Visual Age 还有赛门铁克的Visual cafe 这几业是很给力的
String类和StringBuffer类:
一个字符串就是一边串的字符,java定义了String和StringBuffer两个类 来封装对字符串的各种操作,它们都被放到了java.lang包中,
不需要用import java.lang这个语句导入就可以直接使用他们了
String类用于比较两个字符串,查找和抽取串中的字符或子串、【字符串与其他类型之间相互转换等 String类中的内容一旦被初始化就不能再改变。
StringBuffer类用于内容 可以改变的字符串,可以将其他各种类型的数据增加、插入到字符串中,也可以翻转字符串原来的内容。一旦通过StringBuffer生成最终想要的字符串,就应该使用StringBuffer.toString方法将其转换成String类,随后就可能 使用String类的各种方法操纵这个字符串
java为字符串提供了特别的连接操作符(+)可以把其他数据类型的数据转换成字串。并前后接成新的字符串。连接操作符的功能是通过StringBuffer类和它的append方法实现
String类的构造方法String(buf,0,pos)这个方法把数组buf里面的值 从0到pos取出,用来创建一个新的String类对象。
String类有几个比较常用的函数,如equalsIgnoreCase、indexof、substring
equalsIgnoreCase(String anotherString)是在比较两个字符串时忽略大小写,将if(strInfo=="bye")改成 if(strInfo.equalsIgnoreCase("bye"))这样就会输出bye就退出程序
indexOf(int ch)方法是用来返回一个字符串中的首次出现的位置,如果没有这个字符则返回-1.
它的另一种形式indexOf(int ch, int fro,Index)返回 的是从fromIndex指定的数值开始ch字符首次出现的位置该方法可以应用于文件和数据库内容的查找等 功能。
String str="hello world";
System.out.println(str.indexof('o'));//打印结果是4
String str="hello world";
System.out.println(str.indexOf('o',6));//结果是7
indexOf还有其他几种形式
indexOf(String str)
indexOf(String str,int fromIndex)
subString(int beginIndex)方法返回的是一个字符串中从beginIndex指定数值到末尾的一个字符串,如果beginIndex指定的数值超过当前字符串的长度,则返回一个空字符串
这个方法也有另一种形式substring(int beginIndex,int endIndex)返回 的是当前字符串中从beginIndex开始 到endIndex-1结束的一个字符串
String类中的replace和toUpperCase方法不能改变字符串的内容?与String类对象的内容一旦被初始化就不能再改变不矛盾么?
它们返回类型都是String类,即生成一个新的字符串,而不是改变原来的字符串内容。
基本数据类型的对象包装类:
java对数据即提供基本数据的简单类型,也提供了相应的包装类使用基本简单数据类型,可以改善系统的性能。
java中很多类参数类型都是object即这些方法接收的参数都 是对象 ,同时,当要使用这些方法来处理基本功数据类型的数据,【这就是包装类
包装类对象在进行基本数据类型的类型转换时也特别有用。比如整数与字符串之间的转换
打印一个矩形
附上出处链接:http://blog.csdn.net/rensongling/article/details/7664188
‘陆’ Java图形用户界面编程
我给你写,已经测试,你看合不合你的意思
package dongzi.pattern;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class SumTest extends JPanel{
JTextField mem[] = new JTextField[10] ;
JButton sumButton = new JButton("SUM") ;
JTextField sumText = new JTextField(4) ;
public SumTest() {
setLayout(new FlowLayout()) ;
for (int i = 0; i < 10; i++) {
mem[i] = new JTextField(4) ;
add(mem[i]) ;
}
add(sumButton) ;
add(sumText) ;
sumButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
int sum = 0 ;
for (int i = 0 ;i < 10; i++) {
sum += Integer.parseInt(mem[i].getText().trim()) ;
}
sumText.setText(String.valueOf(sum)) ;
}
}) ;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
JFrame frame = new JFrame() ;
SumTest test = new SumTest() ;
frame.add(test) ;
frame.setSize(800, 100) ;
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE) ;
frame.setVisible(true) ;
}
}
‘柒’ JAVA的图形界面API底层是调用了操作系统的API实现的吗
现在主流的三个java图形界面库实现方式不同:
(1) awt直接调用操作系统的api。
(2) swing的图形界面自己绘制
(3) swt的图形界面会先去寻找操作系统有没有提供这个组件,如果没有,则自己绘制一个,有的话直接调用。
‘捌’ java中API 和Swing分别表示什么意思
API(Application Programming Interface应用编程接口)是sun公司为java程序员发布的一个类库,sun公司在其中提供了编程常用的类和接口,这些类和接口分布在各个包中,并以树状层次结构组织起来,sun公司负责维护该类库。Swing是这个类库中的一个包,swing是基于awt之上的,但swing是轻量级的,而awt却是重量级的,这是swing优于awt的地方,swing和awt均用于图形用户界面编程。
‘玖’ java常用api有哪些
Java常用API包括如下:
Java集合(位于java.util包下)
Java数据库编程zhuan(位于java.sql和javax.sql包行下shu),
Java输入输出(位于java.io和java.nio包下),
Java图形界面编程(位于java.awt包和javax.swing包下),
Java国际化和格式化(位于java.text包下),
Java多线程编程(位于java.concurrent包下),
Java网络编程编程(位于java.net包下)