趁着年前这几天,挖个深坑,搞一下java的gui脚本(陆续更新,欢迎加入)
主要用于汽车常用CFD分析的简化操作,脚本性质,陆续增加其他功能插件。
先上一个NETBEANS的简化教程(starccm+10.04为例)
1、首先搭建环境
a、netbeans软件安装(java1.7版本)
b、jdk 1.7安装
c、starccm+库导入
2、构思功能
实现一个连续体的脚本,空气动力粘度可填写,如图
3、建立文件结构
新建如下结构文件
4、编写test.java,蓝红绿可根据实际情况更改
package test;
import javax.swing.JFrame;
import star.common.Simulation;
import star.common.StarMacro;
public class test extends StarMacro{
public void execute() {
Simulation sim = this.getActiveSimulation();
gui mw = new gui(sim);
mw.setVisible(true);
mw.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
}
}
5、编辑jframe
设置变量名为jTextField_viscosity,红色为增加代码,包和变量名称可能会有问题,可根据实际情况更改
package test;
import star.common.Simulation;
import javax.swing.JPanel;
import javax.swing.JFrame;
import javax.swing.JLabel;
import java.awt.Rectangle;
import java.awt.Font;
import javax.swing.JTextField;
import javax.swing.JButton;
import star.turbulence.*;
import star.material.*;
import star.common.*;
import star.keturb.*;
import star.flow.*;
import star.segregatedflow.*;
import star.metrics.*;
import star.common.Simulation;
/**
*
* @author wangfc
*/
public class gui extends javax.swing.JFrame {
/**
* Creates new form gui
*/
public gui() {
initComponents();
}
private Simulation simulation_0 = null;
public gui(Simulation Simlocal){
initComponents();
this.simulation_0 = Simlocal;
}
/**
* This method is called from within the constructor to initialize the form.
* WARNING: Do NOT modify this code. The content of this method is always
* regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
//
private void initComponents() {
jButton_model = new javax.swing.JButton();
jTextField_viscosity = new javax.swing.JTextField();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
jButton_model.setText("粘度");
jButton_model.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton_modelActionPerformed(evt);
}
});
jTextField_viscosity.setText("XXXXXXXXXX");
jTextField_viscosity.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jTextField_viscosityActionPerformed(evt);
}
});
ja