2

更新: 我删除了指定字体大小,现在字体大小是可读的 - 但是,这意味着根本无法指定任何字体大小 - 这同样糟糕!

我在 Windows XP 上开发了我的程序。大多数字段的字体设置为 12 磅。大小可读且足够。当我尝试在 Windows 7 上运行时,屏幕上的字体很小。12 号字体现在看起来像 6 号!然而,这并不统一。在某些小部件上设置的文本(例如在表格列标题和选择框上)看起来很大 - 像以前一样为 12 磅大小的字体。但是现在在缩小的 gui 小部件上,它们被切断了。显示分辨率默认为 1920 x 1080。这是下面的屏幕截图。例如,这里是在 Windows 7 上运行的表的 JavaFX 教程示例。它被修改为指定字体大小。注意 Win7 上的 12 号字体有多小。还可以看到表格列标题字体要大得多并且溢出:

JavaFX 中的错误截图

fxml 文件的代码如下。

<?xml version="1.0" encoding="UTF-8"?>

<?import java.lang.*?>
<?import java.util.*?>
<?import javafx.scene.*?>
<?import javafx.scene.control.*?>
<?import javafx.scene.layout.*?>
<?import javafx.geometry.Insets?>
<?import javafx.scene.control.cell.*?> 
<?import javafx.collections.*?> 
<?import fxmltableview.*?> 
<?import java.lang.*?>
<?import java.util.*?>
<?import javafx.collections.*?>
<?import javafx.scene.*?>
<?import javafx.scene.control.*?>
<?import javafx.scene.layout.*?>
<?import javafx.scene.paint.*?>
<?import javafx.scene.text.*?>
<?import javafx.collections.*?>
<?import java.lang.*?>
<Scene xmlns:fx="http://javafx.com/fxml" >
    <GridPane alignment="center" hgap="10" vgap="10">
        <padding>
            <Insets top="10" right="10" bottom="10" left="10"/>
        </padding>
        <Label  text="Address Book: This text is in font size 12 on Win7" GridPane.columnIndex="0" GridPane.rowIndex="0">
            <font>
                <Font size="12.0"/>
            </font>
        </Label>
        <TableView GridPane.columnIndex="0" GridPane.rowIndex="1">
            <columns>
                <TableColumn text="First Name">
                    <cellValueFactory>
                        <PropertyValueFactory property="firstName" />
                    </cellValueFactory>
                </TableColumn>
                <TableColumn text="Last Name">
                    <cellValueFactory>
                        <PropertyValueFactory property="lastName" />
                    </cellValueFactory>
                </TableColumn>
                <TableColumn text="Email Address">
                    <cellValueFactory>
                        <PropertyValueFactory property="email" />
                    </cellValueFactory>
                </TableColumn>
            </columns> 
                              <items>
                <FXCollections fx:factory="observableArrayList">
                    <Person firstName="Jacob" lastName="Smith"  
                email="jacob.smith@example.com"/>
                    <Person firstName="Isabella" lastName="Johnson" 
                email="isabella.johnson@example.com"/>
                    <Person firstName="Ethan" lastName="Williams" 
                email="ethan.williams@example.com"/>
                    <Person firstName="Emma" lastName="Jones"
                email="emma.jones@example.com"/>
                    <Person firstName="Michael" lastName="Brown" 
                email="michael.brown@example.com"/>
                </FXCollections>
            </items> 
        </TableView>
    </GridPane>
</Scene>
4

0 回答 0