A. java. swing如何点击一个按钮,本窗口的界面变更如登陆后又一个界面,有什么思路和简单实例
如果是想用同一个JFrame的话,可以更改JFrame中的Jpanel(点击按钮时间处理时更改),如果不是同一个的话,可以通过设置JFrame的方法setVisible(false)来使界面不可见来变更界面。
B. java swing表格实例制作,简单两行两列,在线等
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.event.*;
public class test2
{
public test2(){
JFrame f=new JFrame();
Object[][] playerInfo={
{"王鹏",new Integer(100),new Integer(80),new Boolean(true)},
{"李鹏",new Integer(20),new Integer(30),new Boolean(false)},
{"张鹏",new Integer(89),new Integer(60),new Boolean(true)}
};
String[] Names={"姓名","英语","数学","blue"};
JTable table=new JTable(playerInfo,Names);
table.(new Dimension(550,60));//设置此表视口的首选大小。
JScrollPane scrollPane=new JScrollPane(table);
f.setContentPane(scrollPane);
f.setTitle("支持蓝鹰");
f.pack();
f.setVisible(true);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static void main(String args[]){
new test2();
}
};
C. java Swing中的JList中,点击一项在前面自动打勾,需要怎么做求个实例或者思想也成,跪求高手
public class CheckList extends JFrame {
public CheckList() {
super("AKCheckList");
String[] listData = {"Apple", "Orange", "Cherry", "Blue Berry", "Banana", "Red Plum", "Watermelon"};
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (Exception e) {
System.out.println("Unable to find System Look and Feel");
}
final JList listCheckBox = new JList(buildCheckBoxItems(listData.length));
final JList listDescription = new JList(listData);
listDescription.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
listDescription.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent me) {
if (me.getClickCount() != 2) {
return;
}
int selectedIndex = listDescription.locationToIndex(me.getPoint());
if (selectedIndex < 0) {
return;
}
CheckBoxItem item = (CheckBoxItem) listCheckBox.getModel().getElementAt(selectedIndex);
item.setChecked(!item.isChecked());
listCheckBox.repaint();
}
});
listCheckBox.setCellRenderer(new CheckBoxRenderer());
listCheckBox.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
listCheckBox.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent me) {
int selectedIndex = listCheckBox.locationToIndex(me.getPoint());
if (selectedIndex < 0) {
return;
}
CheckBoxItem item = (CheckBoxItem) listCheckBox.getModel().getElementAt(selectedIndex);
item.setChecked(!item.isChecked());
listDescription.setSelectedIndex(selectedIndex);
listCheckBox.repaint();
}
});
JScrollPane scrollPane = new JScrollPane();
scrollPane.setRowHeaderView(listCheckBox);
scrollPane.setViewportView(listDescription);
listDescription.setFixedCellHeight(20);
listCheckBox.setFixedCellHeight(listDescription.getFixedCellHeight());
listCheckBox.setFixedCellWidth(20);
getContentPane().add(scrollPane); //, BorderLayout.CENTER);
setSize(350, 200);
setVisible(true);
}
private CheckBoxItem[] buildCheckBoxItems(int totalItems) {
CheckBoxItem[] checkboxItems = new CheckBoxItem[totalItems];
for (int counter = 0; counter < totalItems; counter++) {
checkboxItems[counter] = new CheckBoxItem();
}
return checkboxItems;
}
public static void main(String args[]) {
CheckList checkList = new CheckList();
checkList.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent we) {
System.exit(0);
}
});
}
class CheckBoxItem {
private boolean isChecked;
public CheckBoxItem() {
isChecked = false;
}
public boolean isChecked() {
return isChecked;
}
public void setChecked(boolean value) {
isChecked = value;
}
}
/* Inner class that renders JCheckBox to JList*/
class CheckBoxRenderer extends JCheckBox implements ListCellRenderer {
public CheckBoxRenderer() {
setBackground(UIManager.getColor("List.textBackground"));
setForeground(UIManager.getColor("List.textForeground"));
}
public Component getListCellRendererComponent(JList listBox, Object obj, int currentindex,
boolean isChecked, boolean hasFocus) {
setSelected(((CheckBoxItem) obj).isChecked());
return this;
}
}
}
另外可以使用单列的表格,隐藏划线来做,这个简单一点。
D. java swing 用Panel来实现变换颜色!请看例子!(帮忙看下这个很小的例子哪错了)
public class test extends JFrame{
//创建组件
JPanel jp1 = new JPanel();
JButton jb1 = new JButton("下一个");
//构造函数
public test() {
jp1.setBackground(Color.RED);
jp1.add(jb1);
add(jp1);
//添加监听
jb1.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
//============================================
//在这里控制变颜色就可以了
if(jp1.getBackground().equals(Color.RED)){
jp1.setBackground(Color.blue);
}else{
jp1.setBackground(Color.RED);
}
//============================================
}
});
setLocationRelativeTo(null);
pack();
setVisible(true);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
//主函数
public static void main(String[] args) {
new test();
}
}
这个样就可以了,用一个Panel 就可以了
E. java swing jlabel 是否可以设置透明度 如何操作给个简单例子 谢谢
package test;
import java.awt.BorderLayout;
import java.awt.Color;
import javax.swing.JFrame;
import javax.swing.JLabel;
public class Test01 {
public static void main(String[] args) {
final JFrame frame = new JFrame();
frame.getContentPane().setBackground(Color.GREEN);
JLabel label = new JLabel("123");
label.setOpaque(false);
frame.getContentPane().add(label, BorderLayout.CENTER);
label = new JLabel("12323");
label.setOpaque(false);
frame.getContentPane().add(label, BorderLayout.EAST);
frame.setVisible(true);
}
}
/*以下是API的setOpaque方法说明*/
setOpaque
public void setOpaque(boolean isOpaque)如果为 true,则该组件绘制其边界内的所有像素。否则该组件可能不绘制部分或所有像素,从而允许其底层像素透视出来。
对于 JComponent 而言,此属性的默认值是 false。但是对于大多数标准的 JComponent 子类(如 JButton 和 JTree),此属性的默认值与外观有关。
参数:isOpaque - 如果此组件应该是不透明的,则为 true另请参见:isOpaque()
F. Java swing中,如何实现自动补全提示的文本框,最好提供demo实例。 大致如下图所示:
这个得自己写个组件,去实现,Demo也没时间帮你写,写个类去继承JComponent 然后再监听JTextField
G. java swing如何把获取的文本框值添加到Table表格中,能否给个简单的例子,急用!急用!谢谢
一个类似的例子,从数据库里取数据放table里,请参考。
packageLibary;
importjava.awt.Cursor;
importjava.sql.ResultSet;
importjava.sql.SQLException;
importjava.sql.Statement;
importjava.util.Vector;
importjavax.swing.*;
importjavax.swing.table.DefaultTableModel;
{
/**
*
*/
=5922888622610809963L;
StringBBookName,BBookId;
JButtonBorrow,Cancel;
StatementSearchStmt;
@SuppressWarnings({"rawtypes","unchecked"})
BorrowBookLog(){
ConDBCB3=newConDB();
CB3.connectionDB();
try{
SearchStmt=CB3.dbConn.createStatement();
}catch(SQLExceptione1){
//TODO自动生成的catch块
e1.printStackTrace();
}
DefaultTableModeltableModel=newDefaultTableModel();
String[]tableHeads={"图书编号","图书名称","借阅人","借阅时间"};
Vectorcell;
Vectorrow=newVector();
VectortableHeadName=newVector();
for(inti=0;i<tableHeads.length;i++){
tableHeadName.add(tableHeads[i]);
}
try{
ResultSets=SearchStmt.executeQuery("select*="+"'"+StudentMainFrame.Name+"'");
while(s.next()){
cell=newVector();
cell.add(s.getString("BookId"));
cell.add(s.getString("BookName"));
cell.add(s.getString("StudentId"));
cell.add(s.getString("BorrowedDate"));
row.add(cell);
BBookId=s.getString("BookId");
BBookName=s.getString("BookName");
}
}catch(SQLExceptione1){
//TODO自动生成的catch块
e1.printStackTrace();
}
setTitle("查询结果");
tableModel.setDataVector(row,tableHeadName);
JTabletable=newJTable(tableModel);
table.setRowHeight(20);
table.setCursor(newCursor(12));
getContentPane().setLayout(null);
JScrollPanescrollPane=newJScrollPane(table);
scrollPane.setBounds(10,10,420,200);
scrollPane.setCursor(newCursor(12));
this.getContentPane().add(scrollPane);
setLocation(450,220);
setSize(450,300);
setVisible(true);
}
publicstaticvoidmian(Stringargs[]){
}
}
H. 学Java有哪些可以练手的项目
1.各种管理系统
源码下载(实例一):
jsp开发完整的博研图书馆后台管理系统,不使用框架开发的,太完美了
源码下载(实例二):
javaWeb图书馆管理系统源码mysql版本
源码下载(实例三)
GitHub - uboger/LibraryManager: JAVA GUI 图书馆管理系统
源码下载(实例四):
java swing开发企业人事管理系统源代码下载
2.简易的聊天系统
源码下载(实例一):
java swing开发网络聊天室群聊系统,基于java多线程socket编程
源码下载(实例二):
java swing开发大猫聊天室源码,简单易懂,适合java swing初学者
源码下载(实例三):
java websocket开发简单聊天室系统,实现群聊与一对一单人聊天案例
源码下载(实例四):
jsp开发简单聊天室demo-分享
3.实现通讯录
java通讯录实现了添加删除和查找功能
源码下载(二):
JAVA版通讯录管理系统课程设计源码
源码下载(三):
Java Swing界面.完美设计通讯录..有需要的下
4.坦克大战
源码下载(一):
俄罗斯方块 JAVA版
源码下载(二):
GitHub - FieldSoft-HelloClyde/Tetris-Swing: Swing编写的俄罗斯方块
源码下载(三):
java swing开发的俄罗斯方块游戏,包含完整代码+详细注释
5.五子棋
源码下载(一):
Java实践(十一)——五子棋
源码下载(二):
java swing开发的五子棋小游戏源码
源码下载(三):
java swing开发单机版五子棋源代码下载
源码下载(四):
Java五子棋算法和代码
6.中国象棋
源码下载(一):Java实践(十二)——中国象棋
7.贪吃蛇
java贪吃蛇源代码 、 java贪吃蛇源代码
以上是总结出来的简单的练手项目,希望对你有帮助
I. java swing左边树图,当点击任意节点时,右边显示显示数据, 求一个简单的源码例子
importjava.awt.BorderLayout;
importjava.awt.Container;
importjava.awt.Dimension;
importjavax.swing.JFrame;
importjavax.swing.JLabel;
importjavax.swing.JPanel;
importjavax.swing.JTree;
importjavax.swing.event.TreeSelectionEvent;
importjavax.swing.event.TreeSelectionListener;
importjavax.swing.tree.DefaultMutableTreeNode;
{
privateJPanelp;
publicTestSwingTree(Stringtitle){
super(title);
}
publicvoidinit(){
Containerc=this.getContentPane();
DefaultMutableTreeNoderoot=newDefaultMutableTreeNode("root");
DefaultMutableTreeNodechild1=newDefaultMutableTreeNode("child1");
DefaultMutableTreeNodechild11=newDefaultMutableTreeNode("child11");
DefaultMutableTreeNodechild12=newDefaultMutableTreeNode("child12");
DefaultMutableTreeNodechild2=newDefaultMutableTreeNode("child2");
DefaultMutableTreeNodechild3=newDefaultMutableTreeNode("child3");
DefaultMutableTreeNodechild31=newDefaultMutableTreeNode("child31");
root.add(child1);
root.add(child2);
root.add(child3);
child1.add(child11);
child1.add(child12);
child3.add(child31);
JTreetree=newJTree(root);
tree.setPreferredSize(newDimension(120,400));
tree.addTreeSelectionListener(newTreeSelectionListener(){
publicvoidvalueChanged(TreeSelectionEvente){
p.removeAll();
JLabell=newJLabel(e.getPath().toString());
l.setBounds(5,190,170,20);
p.add(l);
p.repaint();
}
});
c.add(tree,BorderLayout.WEST);
p=newJPanel();
p.setLayout(null);
p.setPreferredSize(newDimension(180,400));
c.add(p,BorderLayout.CENTER);
this.setLocation(400,300);
this.setSize(300,400);
this.setResizable(false);
this.setVisible(true);
this.setDefaultCloseOperation(this.DISPOSE_ON_CLOSE);
}
publicstaticvoidmain(String[]args){
newTestSwingTree("TestSwingJtree").init();
}
}
J. java swing 中的 paint(Graphics g) 中,g这个实例是由哪个类创建的
你好!
Graphics是一个抽象类,也就是说不可以直接实例化对象,只能采取
Graphics
g
=
jp.getGraphics()
的方法来获取画布工具并传Graphics的g对象,这里的jp是某个实例化的窗体或者面板对象,对应画出来的图像就在这个jp容器上面
如果没有经过getGraphics()这一步,就会默认为取的是你实例化的MainJFrame作为画布对象,
有了画布对象自然就可以在上面随便画了,而且由于是引用传递,所以传的是地址,不是值,所以形参和实参也就没多大差别了,都是在直接访问地址的。
如有疑问,请追问。