普通的Java桌面应用和使用JavaFX构建的Java应用程序有什么区别?
它们各自的优缺点是什么?
我认为您所问的是构建JavaFX桌面应用程序与Java Swing桌面应用程序的优缺点。在两者都尝试过后,我可以指出一些不同之处:
Java Swing
优点:
缺点:
JavaFX
优点:
缺点:
JavaFX正在快速改进,比Swing更易于使用。
JavaFX是一个GUI框架,具有多种优点,包括动画和CSS集成。这可以帮助创建许多可以在CSS3中看到的2D和接近3D的效果。
JavaFX是纯Java编写的,因此您不需要学习除了您所知道的好老Java之外的其他语言。对于桌面和企业级应用程序,JavaFX是我最喜欢的GUI平台,仅在处理旧应用程序环境(即与硬件集成)时才使用Swing。我所知道的唯一缺点是场景构建器尚未集成,并且使用控件和API需要进行一些思考,但这只是小问题。
对我来说,Java桌面和JavaFX没有区别,因为JavaFX可用于开发桌面应用程序、企业应用程序和小程序。您可以查看当前的JavaFX版本以了解其功能。
JTable类是另一个在AWT中没有相应的Swing组件。JTable提供了创建和显示表格的非常灵活的可能性。我们可以从对象数组或向量或实现TableModel接口的对象构建表格。
JTableModel接口定义了指定表格内容的对象的方法。该类提供了AbstractTableModel JTableModel预定接口的实现。通常扩展此类以提供模型表的自定义实现。 JTable类提供了编辑表格的功能。setCellEditor()方法允许将TableCellEditor接口的对象标识为编辑器表单元格。
import java.awt.*;
import javax.swing.*;
import javax.swing.table.*;
public class JavaExampleTableInJApplet extends JApplet
{
Object[] Dt = new Object[5];
DefaultTableModel DfltTblModl = new DefaultTableModel();
JTable Tbl = new JTable(DfltTblModl);
public void init()
{
for(int clmn = 0; clmn < 5; clmn++)
{
DfltTblModl.addColumn("Column"+clmn);
}
for(int row = 0; row < 10; row++)
{
for(int clmn = 0; clmn < 5; clmn++)
{
Dt[clmn] = "Cell " + row + "," + clmn;
}
DfltTblModl.addRow(Dt);
}
getContentPane().add(new JScrollPane(Tbl));
}
}