使用Javaswing编写商品信息展示界面且可以用坐标调整,在文件中读取信息,文件中的信息依次是商品名称,商品售价,商品数量,总计,每一行是一组数据,一组数据以逗号分隔,并将文件中的信息全部展示用表格在商品信息展示界面,并在界面中显示一个返回菜单的按钮,表头分别是商品名称,商品售价,商品数量,总计,将所有总计相加得到一个今日收入。
时间: 2024-04-15 18:31:45 浏览: 75
你可以使用 Java Swing 来编写商品信息展示界面,并通过坐标调整组件的位置。要从文件中读取信息,你可以使用 Java 的文件读取功能。
首先,你需要创建一个 JFrame 实例作为主窗口,并设置其布局管理器为 null,以便手动控制组件的位置。然后,创建一个 JTable 实例来显示商品信息,并将其添加到主窗口中。
以下是一个简单的示例代码,演示了如何使用 Java Swing 创建商品信息展示界面:
```java
import javax.swing.*;
import java.awt.*;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
public class ProductInfoDisplay extends JFrame {
private JTable table;
private JButton backButton;
public ProductInfoDisplay() {
setTitle("商品信息展示");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setLayout(null); // 设置布局管理器为 null
// 创建表头数据
String[] columnNames = {"商品名称", "商品售价", "商品数量", "总计"};
// 从文件中读取商品信息数据
Object[][] rowData = readDataFromFile("商品信息.txt"); // 替换为你的文件路径
// 创建 JTable 实例,并设置表头和数据
table = new JTable(rowData, columnNames);
// 创建一个滚动面板,并将表格添加到其中
JScrollPane scrollPane = new JScrollPane(table);
scrollPane.setBounds(10, 10, 400, 200); // 设置表格的位置和大小
add(scrollPane);
// 创建返回菜单按钮
backButton = new JButton("返回菜单");
backButton.setBounds(10, 220, 100, 30); // 设置按钮的位置和大小
add(backButton);
// 设置窗口大小和显示位置
setSize(430, 300);
setLocationRelativeTo(null); // 居中显示窗口
setVisible(true);
}
private Object[][] readDataFromFile(String filePath) {
Object[][] data = null;
try (BufferedReader reader = new BufferedReader(new FileReader(filePath))) {
// 获取文件行数和列数
long lines = reader.lines().count();
int columns = 4;
// 创建数据数组
data = new Object[(int) lines][columns];
// 读取文件内容并填充数据数组
reader.lines().forEach(line -> {
String[] values = line.split(",");
for (int i = 0; i < columns; i++) {
data[(int) lines - 1][i] = values[i];
}
lines--;
});
} catch (IOException e) {
e.printStackTrace();
}
return data;
}
public static void main(String[] args) {
SwingUtilities.invokeLater(() -> new ProductInfoDisplay());
}
}
```
请替换代码中的文件路径为你的实际文件路径。该示例代码将创建一个包含商品信息的表格,并显示一个返回菜单按钮。你可以根据需要调整组件的位置和大小。
希望这可以帮助到你!如有任何问题,请随时提问。
阅读全文