我想知道像这样的历史记录查询界面,用java swing来做,应该怎么做?

1、整个界面是怎么布局的?2、“今天”、“昨天”这些是什么组件啊,点击后右边的内容就会变,是怎么做到的?3、点击“今天”、“昨天”这些地方时,出现的蓝色的指示标又是怎么做... 1、整个界面是怎么布局的?2、“今天”、“昨天”这些是什么组件啊,点击后右边的内容就会变,是怎么做到的?3、点击“今天”、“昨天”这些地方时,出现的蓝色的指示标又是怎么做的? 展开
 我来答
雪飞潇潇
2017-07-29 · TA获得超过6275个赞
知道大有可为答主
回答量:1968
采纳率:91%
帮助的人:871万
展开全部

你浏览器是搜狗吧


  • 一: 主体布局是 边界布局,   今天昨天前天是1行1列的网格布局

  • 二:点击今天昨天,明天,中间的组件改变内容,可以使用JTabbedPane (选项卡面板)来实现

当然也可以使用JLabel或者JButton来实现.  只要添加点击事件时,改变中间的组件就可以了

  • 三:蓝色指示标,同样可以在接受点击事件时,改变组件的外观,或者更改背景图片或者绘制一些颜色上去

建议的做法:

如果要一模一样的仿写 那么建议不要使用JTabbedPane 组件. 而是把昨天, 今天 等 做成按钮  .  然后点击的时候, 改变内容

简单的仿写

代码如下

import javax.swing.*;
import java.awt.*;

public class SwingDemo extends JFrame {

public SwingDemo() {
JPanel jp = new JPanel(new FlowLayout(FlowLayout.LEFT));
JLabel jl = new JLabel("历史记录");// 文字标签
jl.setFont(new Font("宋体", Font.BOLD, 32));// 设置文字标签的字体
JTextField jtf = new JTextField(8);//文本框,长度8
JButton jb = new JButton("搜索");//按钮
jp.add(jl);
jp.add(jtf);
jp.add(jb);
add(jp, BorderLayout.NORTH);// 把 jp放到北面

JTabbedPane jtp = new JTabbedPane();// 选项卡
JPanel jp0 = new JPanel(new FlowLayout(FlowLayout.LEFT));// 从左到右的流式布局,
JLabel jl1 = new JLabel("今天的历史记录:");
jp0.add(jl1);
jtp.add("今天", jp0);// 选项卡面板添加 标题是 今天, 对应的内容组件是jp0

JTextArea jta = new JTextArea();
jta.append("昨天的历史记录:");
jtp.add("昨天", jta);

JPanel jp1 = new JPanel();
jp1.setBackground(Color.ORANGE);
jtp.add("前天", jp1);
jtp.setTabPlacement(JTabbedPane.LEFT);
add(jtp);
setTitle("主窗口");// 标题
setSize(620, 480);// 大小
setLocationRelativeTo(null);// 居中
setDefaultCloseOperation(EXIT_ON_CLOSE);// 关闭窗口后退出程序
setVisible(true);// 窗口可见
}

public static void main(String[] args) {
new SwingDemo();
}
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式