package frame;
import read_out.ExcelReader;
import math.*;
import map_test.gf;
import java.awt.BorderLayout;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JLabel;
import javax.swing.JTextField;
import javax.swing.JButton;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import javax.swing.UIManager;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import javax.swing.ImageIcon;
import java.awt.List;
import javax.swing.JList;
import javax.swing.JTextArea;
public class stock_frame extends JFrame {
private JPanel contentPane;
private JTextField historyMaxPrice;
private JTextField param1;
private JTextField historyMinPrice;
private JTextField param2;
private JTextField forecasteMaxPrice;
private JTextField forecasteMinPrice;
private JTextField dataFrom;
private JLabel labeImage = new JLabel("New label");
private int i=0;
private int time=1;
private JTextArea textArea = new JTextArea();
/** *//**
* Launch the application.
*/
public static void main(String[] args) {
try {
UIManager.setLookAndFeel("com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel");
} catch (Throwable e) {
e.printStackTrace();
}
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
stock_frame frame = new stock_frame();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/** *//**
* Create the frame.
*/
public stock_frame() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 620, 787);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
JLabel lblMaxprice = new JLabel("HistoryMaxPrice");
lblMaxprice.setBounds(33, 33, 100, 15);
contentPane.add(lblMaxprice);
historyMaxPrice = new JTextField();
historyMaxPrice.setText("42");
historyMaxPrice.setBounds(143, 30, 82, 28);
contentPane.add(historyMaxPrice);
historyMaxPrice.setColumns(10);
JLabel lblMinprice = new JLabel("HistoryMaxPrice");
lblMinprice.setToolTipText("");
lblMinprice.setBounds(33, 70, 100, 15);
contentPane.add(lblMinprice);
param1 = new JTextField();
param1.setText("3");
param1.setBounds(143, 96, 82, 28);
contentPane.add(param1);
param1.setColumns(10);
JButton btnNe = new JButton("BeginTacitly");
btnNe.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent arg0) {
StringObj doc_out=new StringObj();
String docFrom=dataFrom.getText();
File file = new File(docFrom);
ExcelReader readExcel = new ExcelReader(file);
try {
readExcel.open();
} catch (IOException e) {
e.printStackTrace();
}
readExcel.setSheetNum(0); // 设置读取索引为0的工作表
// 总行数
int count = readExcel.getRowCount();
double test_excel[]=new double [count] ;
for (int i = 0; i < count; i++) {
String[] rows = readExcel.readExcelLine(i);
test_excel[i]=Double.parseDouble(rows[4]);
}
ArrayList<PriceNow> test_3=new ArrayList<PriceNow>(test_excel.length);
for(int i=0;i<test_excel.length;i++)
{
test_3.add(new PriceNow());
}
for(int i=0;i<test_excel.length;i++)
{
test_3.get(i).value=test_excel[i];
System.out.print(test_3.get(i).value+" ");
}
//add 8/26 begin
double historyMax=Double.parseDouble(historyMaxPrice.getText());
double historyMin=Double.parseDouble(historyMinPrice.getText());
tacitly mix min
double tacitlyMax=test_3.get(0).value+(historyMax-test_3.get(0).value)/2;
double tacitlyMix=historyMin;
double forecastMax=Double.parseDouble(forecasteMaxPrice.getText());;
double forecastMix=Double.parseDouble(forecasteMinPrice.getText());;
int paramB=Integer.parseInt(param1.getText());
double paramL=Double.parseDouble(param2.getText());
//add 8/26 over
ArrayList<PriceNow> out=new ArrayList<PriceNow>();
//forecast
MoneyMenagement.moneyMenagementRecount_forFrame(paramB,test_3,tacitlyMax,tacitlyMix,30,100000,paramL,out,doc_out);
gf gf_test=new gf();
gf_test.getDataSet2(test_3,out);
try {
gf_test.main_run(i);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
labeImage.setBounds(240, 105, 9999, 9999);
// labeImage=null;
//labeImage = new JLabel("New label");
labeImage.setIcon(new ImageIcon("D:\\pic\\gf"+String.valueOf(i)+".jpg"));
labeImage.setBounds(240, 105,1024,768);
contentPane.add(labeImage);
textArea.setText(doc_out.doc_out);
contentPane.repaint();
i++;
}
});
btnNe.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
}
});
btnNe.setBounds(33, 274, 138, 28);
contentPane.add(btnNe);
JButton btnClose = new JButton("close");
btnClose.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent arg0) {
System.exit(0);
}
});
btnClose.setBounds(33, 390, 93, 23);
contentPane.add(btnClose);
historyMinPrice = new JTextField();
historyMinPrice.setText("10");
historyMinPrice.setColumns(10);
historyMinPrice.setBounds(143, 63, 82, 28);
contentPane.add(historyMinPrice);
JLabel lblPra = new JLabel("param1");
lblPra.setToolTipText("");
lblPra.setBounds(33, 103, 100, 15);
contentPane.add(lblPra);
JLabel lblParam = new JLabel("param2");
lblParam.setToolTipText("");
lblParam.setBounds(33, 136, 100, 15);
contentPane.add(lblParam);
param2 = new JTextField();
param2.setText("0.03");
param2.setColumns(10);
param2.setBounds(143, 129, 82, 28);
contentPane.add(param2);
JLabel lbtMaxPrice = new JLabel("ForecasteMaxPrice");
lbtMaxPrice.setBounds(271, 32, 153, 15);
contentPane.add(lbtMaxPrice);
JLabel lblForecastemaxprice = new JLabel("ForecasteMinPrice");
lblForecastemaxprice.setToolTipText("");
lblForecastemaxprice.setBounds(271, 69, 153, 15);
contentPane.add(lblForecastemaxprice);
forecasteMaxPrice = new JTextField();
forecasteMaxPrice.setText("20");
forecasteMaxPrice.setColumns(10);
forecasteMaxPrice.setBounds(398, 26, 82, 28);
contentPane.add(forecasteMaxPrice);
forecasteMinPrice = new JTextField();
forecasteMinPrice.setText("10");
forecasteMinPrice.setColumns(10);
forecasteMinPrice.setBounds(398, 63, 82, 28);
contentPane.add(forecasteMinPrice);
JButton btnBeginforecast = new JButton("BeginForecast");
btnBeginforecast.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent arg0) {
StringObj doc_out=new StringObj();
String docFrom=dataFrom.getText();
File file = new File(docFrom);
ExcelReader readExcel = new ExcelReader(file);
try {
readExcel.open();
} catch (IOException e) {
e.printStackTrace();
}
readExcel.setSheetNum(0); // 设置读取索引为0的工作表
// 总行数
int count = readExcel.getRowCount();
double test_excel[]=new double [count] ;
for (int i = 0; i < count; i++) {
String[] rows = readExcel.readExcelLine(i);
test_excel[i]=Double.parseDouble(rows[4]);
}
ArrayList<PriceNow> test_3=new ArrayList<PriceNow>(test_excel.length);
for(int i=0;i<test_excel.length;i++)
{
test_3.add(new PriceNow());
}
for(int i=0;i<test_excel.length;i++)
{
test_3.get(i).value=test_excel[i];
System.out.print(test_3.get(i).value+" ");
}
//add 8/26 begin
double historyMax=Double.parseDouble(historyMaxPrice.getText());
double historyMin=Double.parseDouble(historyMinPrice.getText());
tacitly mix min
double tacitlyMax=test_3.get(0).value+(historyMax-test_3.get(0).value)/2;
double tacitlyMix=historyMin;
double forecastMax=Double.parseDouble(forecasteMaxPrice.getText());;
double forecastMix=Double.parseDouble(forecasteMinPrice.getText());;
int paramB=Integer.parseInt(param1.getText());
double paramL=Double.parseDouble(param2.getText());
//add 8/26 over
ArrayList<PriceNow> out=new ArrayList<PriceNow>();
//forecast
MoneyMenagement.moneyMenagementRecount_forFrame(paramB,test_3,forecastMax,forecastMix,30,100000,paramL,out,doc_out);
gf gf_test=new gf();
gf_test.getDataSet2(test_3,out);
try {
gf_test.main_run(i);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
labeImage.setBounds(240, 105, 9999, 9999);
// labeImage=null;
//labeImage = new JLabel("New label");
labeImage.setIcon(new ImageIcon("D:\\pic\\gf"+String.valueOf(i)+".jpg"));
labeImage.setBounds(240, 105,1024,768);
contentPane.add(labeImage);
textArea.setText(doc_out.doc_out);
contentPane.repaint();
i++;
}
});
btnBeginforecast.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
}
});
btnBeginforecast.setBounds(33, 314, 138, 28);
contentPane.add(btnBeginforecast);
JLabel lblDatafrom = new JLabel("DataFrom:");
lblDatafrom.setToolTipText("");
lblDatafrom.setBounds(33, 207, 100, 15);
contentPane.add(lblDatafrom);
dataFrom = new JTextField();
dataFrom.setText("d:\\\\test_excel\\\\ExpData2.xls");
dataFrom.setColumns(10);
dataFrom.setBounds(33, 234, 192, 28);
contentPane.add(dataFrom);
JButton btnForecastfortimes = new JButton("ForecastForTimes");
btnForecastfortimes.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent arg0) {
StringObj doc_out=new StringObj();
String docFrom=dataFrom.getText();
File file = new File(docFrom);
ExcelReader readExcel = new ExcelReader(file);
try {
readExcel.open();
} catch (IOException e) {
e.printStackTrace();
}
readExcel.setSheetNum(0); // 设置读取索引为0的工作表
// 总行数
int count = readExcel.getRowCount();
double test_excel[]=new double [time+1] ;
for (int i = 0; i < time; i++) {
if(count>=time)
{
String[] rows = readExcel.readExcelLine(i);
test_excel[i]=Double.parseDouble(rows[4]);
}
}
ArrayList<PriceNow> test_3=new ArrayList<PriceNow>(test_excel.length);
for(int i=0;i<test_excel.length;i++)
{
test_3.add(new PriceNow());
}
for(int i=0;i<test_excel.length;i++)
{
test_3.get(i).value=test_excel[i];
System.out.print(test_3.get(i).value+" ");
}
//add 8/26 begin
double historyMax=Double.parseDouble(historyMaxPrice.getText());
double historyMin=Double.parseDouble(historyMinPrice.getText());
tacitly mix min
double tacitlyMax=test_3.get(0).value+(historyMax-test_3.get(0).value)/2;
double tacitlyMix=historyMin;
double forecastMax=Double.parseDouble(forecasteMaxPrice.getText());;
double forecastMix=Double.parseDouble(forecasteMinPrice.getText());;
int paramB=Integer.parseInt(param1.getText());
double paramL=Double.parseDouble(param2.getText());
//add 8/26 over
ArrayList<PriceNow> out=new ArrayList<PriceNow>();
//forecast
MoneyMenagement.moneyMenagementRecount_forFrame(paramB,test_3,forecastMax,forecastMix,30,100000,paramL,out,doc_out);
gf gf_test=new gf();
gf_test.getDataSet2(test_3,out);
try {
gf_test.main_run(i);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// JLabel labeImage = new JLabel("New label");
//labeImage.setIgnoreRepaint(true);
labeImage.setBounds(240, 105, 9999, 9999);
// labeImage=null;
//labeImage = new JLabel("New label");
labeImage.setIcon(new ImageIcon("D:\\pic\\gf"+String.valueOf(i)+".jpg"));
labeImage.setBounds(240, 105,1024,768);
contentPane.add(labeImage);
textArea.setText(doc_out.doc_out);
contentPane.repaint();
i++;
time++;
}
});
btnForecastfortimes.setBounds(33, 354, 138, 28);
contentPane.add(btnForecastfortimes);
textArea.setBounds(33, 438, 138, 294);
contentPane.add(textArea);
}
}