package bigJob;
/*
* 此类是主舞台的类,在此类上实线场景切换,删除,插入,添加,搜索等一系列功能
*/
import javafx.scene.*;
import javafx.stage.*;
import javafx.application.Application;
import javafx.scene.control.*;
import javafx.scene.layout.*;
import javafx.scene.layout.BorderPane;
import javafx.geometry.*;
import javafx.event.*;
import javafx.scene.paint.Color;
import java.util.*;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.lang.management.PlatformLoggingMXBean;
import java.lang.reflect.Array;
import java.nio.file.attribute.PosixFilePermission;
import javafx.application.*;
public class Stage1 extends Application{
TextField t=new TextField();
GridPane Gpmain=new GridPane();//网格主面板
File file=new File("E:\\main.txt");//用户信息文件
File userFile=new File("E:\\user.txt");
//FileInputStream fip=new FileInputStream(file);
Bill bill[]=new Bill[100];
Bill saveB=new Bill();
ArrayList<Character> arrayList=new ArrayList<Character>();
Bill sign=new Bill();
ArrayList<Bill> arrayListB=new ArrayList<Bill>();
Scene scene=new Scene(Gpmain,1200,800);
int flag=0;
Stage stage1=new Stage();
public static void main(String[] args)
{
Application.launch(args);
}
@Override
public void start(Stage stage) throws Exception { //启动舞台
System.out.println("运行通过");
this.stage1=stage;
//流式面板
FlowPane Fp1=new FlowPane();
//Fp1.set
Label lab1=new Label("家庭账单管理系统");
lab1.setStyle("-fx-font-size:30");
Fp1.setPrefSize(200, 50);
Fp1.setPadding(new Insets(50,50,50,100));
Fp1.getChildren().add(lab1);
//网格面板1
GridPane Gp1=new GridPane();
Button bt1=new Button("账单管理");
bt1.setPrefSize(150, 40);
bt1.setStyle("-fx-font-size:25");
Button bt2=new Button("用户管理");
bt2.setPrefSize(150, 40);
bt2.setStyle("-fx-font-size:25");
Button bt3=new Button("分类管理");
bt3.setPrefSize(150, 40);
bt3.setStyle("-fx-font-size:25");
Button bt4=new Button("退出系统");
bt4.setPrefSize(150, 40);
bt4.setStyle("-fx-font-size:25");
Gp1.add(bt1, 0, 0);
Gp1.add(bt2, 0, 1);
Gp1.add(bt3, 0, 2);
Gp1.add(bt4, 0, 3);
Gp1.setPadding(new Insets(30,30,30,30));
// Gp1.setGridLinesVisible(true);
Gp1.setVgap(100);
Gp1.setHgap(30);
Bill[] b1=new Bill[100];
//网格面板2
GridPane Gp2=new GridPane();
FlowPane Fp2=new FlowPane();
TextField Tf1=new TextField();
Tf1.setPrefSize(200, 30);
Tf1.setPromptText("输入商品名称");
Label lab2=new Label("商品名称:");
Button btSearch=new Button("搜索");
lab2.setStyle("-fx-font-size:18");
btSearch.setStyle("-fx-font-size:18");
Tf1.setStyle("-fx-font-size:18");
Fp2.getChildren().add(lab2);
Fp2.getChildren().add(Tf1);
Fp2.getChildren().add(btSearch);
Fp2.setHgap(10);
Gp2.add(Fp2, 0, 0);
Gp2.setPadding(new Insets(35,30,30,30));
Gp2.setHgap(40);
Gp2.setVgap(40);
Gp2.setPrefSize(600, 100);
Gp2.setGridLinesVisible(false);
GridPane Gp3=new GridPane();
Label LabNumber=new Label("编号");
Label labDate=new Label("日期");
Label labName=new Label("名称");
Label labGote=new Label("类别");
Label LabMoney=new Label("金额");
Label labRemark=new Label("备注");
Gp3.add(LabNumber, 0, 0);
Gp3.add(labDate, 1, 0);
Gp3.add(labName, 2, 0);
Gp3.add(labGote, 3, 0);
Gp3.add(LabMoney, 4, 0);
Gp3.add(labRemark, 5, 0);
Gp3.setHgap(30);
Gp3.setVgap(15);
Label[] lab=new Label[6];
ArrayList<Bill> arrayListBill=getFile(file);
System.out.println("验证"+arrayListBill.size());
for(int i=0;i<arrayListBill.size();i++)//在主页面显示存在的账单信息
{
String str=arrayListBill.get(i).billNumber;
lab[0]=new Label(str);
String str0=arrayListBill.get(i).billDate;
lab[1]=new Label(str0);
String str1=arrayListBill.get(i).billName;
lab[2]=new Label(str1);
String str2=arrayListBill.get(i).category;
lab[3]=new Label(str2);
String str3=arrayListBill.get(i).billMoney;
lab[4]=new Label(str3);
String str4=arrayListBill.get(i).billRemark;
lab[5]=new Label(str4);
for(int j=0;j<6;j++)
{
Gp3.add(lab[j], j, i+1);
}
// System.out.print(arrayListBill.get(i));
}
Gp3.setGridLinesVisible(true);
Gpmain.add(Fp1, 0, 0);//将各个面板放置在主面板中
Gpmain.add(Gp1, 0, 1,1,3);
Gpmain.add(Gp2, 1, 1);
Gpmain.add(Gp3, 1, 2);
scene.setRoot(Gpmain);
stage1.setScene(scene);
stage1.setTitle("账单管理");
//账单管理按钮
bt1.setOnAction(new EventHandler<ActionEvent>()//账单管理按钮切换到账单管理场景
{
@Override
public void handle(ActionEvent event)
{
Scene1();
}
});
//用户管理按钮
bt2.setOnAction(new EventHandler<ActionEvent>()//用户管理按钮切换到用户管理场景
{
@Override
public void handle(ActionEvent event)
{
Scene2();
}
});
bt3.setOnAction(new EventHandler<ActionEvent>()//分类管理按钮切换到分类管理场景
{
@Override
public void handle(ActionEvent event)
{
Scene3();
}
});
//退出系统按钮
bt4.setOnAction(new EventHandler<ActionEvent>()//退出系统,结束舞台
{
@Override
public void handle(ActionEvent event)
{
Platform.exit();
}
});
btSearch.setOnAction(new EventHandler<ActionEvent>()//主页面搜索按钮//智能搜索商品
{
@Override
public void handle(ActionEvent event)
{
try {
String str=Tf1.getText();
ArrayList<Bill> arr=getFile(file);
for(int i=0;i<arr.size();i++)
{
if(arr.get(i).billName.equals(str))
{
saveB=arr.get(i);
}
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Scene1();
}
});
stage1.show();
}
public ArrayList<Bill> getFile(File file) throws Exception//获取File中的数据并将其存在一个临时ArrayList集合框架之中
{
ArrayList<Bill> arrayListB=new ArrayList<Bill>();
FileInputStream fip=new FileInputStream(file);
InputStreamReader reader=new InputStreamReader(fip);
while(reader.ready())
{
arrayList.add((char) reader.read());
}
String s="";
int a=0, b=0;
Bill B=new Bill();
reader.close();
fip.close();
for(int i=0;i<arrayList.size();i++)//通过获取的文件数据将其转换为ArrayList集合类型的数据
{
char ch=arrayList.get(i);
if(ch=='\n'||ch=='\r')
{
B.billRemark=s;
if(B.billRemark!=""&&B.billName!="")
{
arrayListB.add(B);
B=new Bill();
s="";
a++;
b=0;
}
}
else if(ch==','||ch==',')
{
switch(b)
{
case 0:B.billNumber=s;break;
case 1:B.billDate=s;break;
case 2:B.billName=s;break;
case 3:B.category=s;break;
case 4:B.billMoney=s;break;
}
s="";
b++;
}
else
s+=ch;
}
reader.close();
fip.close();
return arrayListB;
没有合适的资源?快使用搜索试试~ 我知道了~
资源详情
资源评论
资源推荐
收起资源包目录
Java基于JavafxGUI界面家庭消费账单管理系统.rar (43个子文件)
Java基于JavafxGUI界面家庭消费账单管理系统
.project 382B
src
bigJob
User.java 656B
Bill.java 2KB
Administrater.java 55B
Stage3.java 658B
Stage0.java 6KB
Stage1.java 23KB
test
Test01.java 322B
.idea
misc.xml 262B
workspace.xml 5KB
encodings.xml 198B
modules.xml 259B
.settings
org.eclipse.jdt.core.prefs 598B
BigJob.iml 448B
.classpath 301B
bin
bigJob
User.class 1KB
Stage1$15.class 3KB
Stage1$19.class 1015B
Stage1$12.class 1KB
Stage1$3.class 894B
Stage3.class 1KB
Stage0.class 7KB
Stage1$8.class 2KB
Stage1$10.class 3KB
Stage1$18.class 1KB
Stage0$1.class 2KB
Stage1$17.class 1KB
Stage1$11.class 1KB
Stage1$13.class 1KB
Stage1$16.class 840B
Stage1$9.class 2KB
Stage1$5.class 2KB
Stage1$7.class 2KB
Bill.class 2KB
Administrater.class 278B
Stage1$6.class 1013B
Stage1$4.class 921B
Stage1$1.class 894B
Stage1$14.class 1015B
Stage1.class 16KB
Stage1$2.class 894B
test
Test01.class 977B
EXE.jar 34KB
共 43 条
- 1
小枫学IT
- 粉丝: 6703
- 资源: 26
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0