【Java开源代码栏目提醒】:网学会员Java开源代码为您提供TextImagePieceTogether.java参考,解决您在TextImagePieceTogether.java学习中工作中的难题,参考学习。
package com.zf.s17;//创建一个包
import java.awt.*;//引入类
import java.awt.event.*;
import javax.swing.*;
public class TextImagePieceTogether extends JFrame implements ActionListener {//操作实现拼图的游戏的类
PanelOfImage imagePanel;//声明图片面板
JPanel panelOfSouth, panelOfLook;////声明南侧面板和查看面板
Button startButton;//声明开始按钮
Button lookButton;//声明查看按钮
Button chooseButton;//选择按钮
Container container;// 容器,得到内容面板
public TextImagePieceTogether() {//构造方法进行初始化
container = this.getContentPane();//获得内容面板
startButton = new Button("开始");//创建开始按钮
startButton.addActionListener(this);//添加监听事件
lookButton = new Button("查看");
lookButton.addActionListener(this);
chooseButton = new Button("选择");
chooseButton.addActionListener(this);
panelOfLook = new JPanel();//创建查看面板
panelOfLook.setLayout(null);//设置布局
Icon icon = new ImageIcon("pictrue/pic_" + PanelOfImage.currentPID
+ ".jpg");//创建图标
JLabel label = new JLabel(icon);//创建图标标签
label.setBounds(0, 0, 300, 300);//设置标签的位置
panelOfLook.add(label);//添加标签
panelOfSouth = new JPanel();//创建南侧面板
panelOfSouth.setBackground(Color.red);//设置背景颜色
panelOfSouth.add(startButton);//添加开始按钮
panelOfSouth.add(lookButton);//添加查看按钮
panelOfSouth.add(chooseButton);//添加选择按钮
imagePanel = new PanelOfImage();//创建图片面板
container.add(imagePanel, BorderLayout.CENTER);
container.add(panelOfSouth, BorderLayout.SOUTH);
this.setTitle("拼图游戏");//设置标题
this.setLocation(300, 200);//设置位置
this.setSize(308, 365);//设置大小
this.setResizable(false);//设置是否可以通过某个用户操作调整
this.setVisible(true);//设置可视
this.setDefaultCloseOperation(3);//设置默认关闭操作
}
public void actionPerformed(ActionEvent event) {//按钮触发的事件
Button button = (Button) event.getSource();//获得事件按钮源
if (button == startButton) {//如果是开始按钮
imagePanel.breakRank();//调用图片方格打乱方法
} else if (button == lookButton) {//如果是查看事件
if (button.getLabel() == "查看") {//如果按钮标签为"查看"
container.remove(imagePanel);//容器移除图片面板
container.add(panelOfLook);//容器添加查看标签
panelOfLook.updateUI();//不用调整大小就可以出现新增删的组件
container.repaint();//重绘
button.setLabel("返回");//设置按钮标签
} else {
container.remove(panelOfLook);//容器移除查看面板
container.add(imagePanel);//容器添加图片面板
container.repaint();//重绘
button.setLabel("查看");
}
} else if (button == chooseButton) {//如果是选择按钮
Choice choice = new Choice();//创建选择器
choice.add("--小猫--");//添加列表项
choice.add("--QQ--");
int i = JOptionPane.showConfirmDialog(this, choice, "选择图片",
JOptionPane.OK_CANCEL_OPTION);//弹出对话框
if (i == JOptionPane.YES_OPTION) {//选择对话框的确定按钮
PanelOfImage.currentPID = choice.getSelectedIndex() + 1;//获得列表项的编号
imagePanel.reLoadPictrue();//图片重载
Icon icon = new ImageIcon("pictrue/pic_"
+ PanelOfImage.currentPID + ".jpg");//获得图片图标
JLabel label = new JLabel(icon);//根据图标设置标签
label.setBounds(0, 0, 300, 300);//设置标签的方位
panelOfLook.removeAll();
panelOfLook.add(label);
panelOfLook.repaint();
}
}
}
public static void main(String[] args) {//java程序主入口处
new TextImagePieceTogether();//实例化对象
}
}
上一篇:
TextHttpProxy.java
下一篇:
用遗传算法解决车辆优化调度问题