我试图减少QTableWidget的水平标题中的字体大小.下面的代码不起作用,字体大小保持不变.
QFont font;
font.setPointSize(7);
ui.tableWidget->horizontalHeader()->setFont(font);
Run Code Online (Sandbox Code Playgroud)
在这种情况下如何更改字体?
小智 8
基本上有两种方法:
(1)我不能100%确定你的代码无法正常工作,但我的猜测是你创建的字体无效且无法应用,通常你想使用QHeaderView中的现有Font,操作它并将其重置为确保所有其他设置完全相同:
// Example 1
QFont font = ui.tableWidget->horizontalHeader()->font();
font.setPointSize( 42 );
ui.tableWidget->horizontalHeader()->setFont( font );
Run Code Online (Sandbox Code Playgroud)
(2)此外,您可以使用StyleSheets代替QFont,这通常更容易.
// Example 2
_ui.tableWidget->horizontalHeader()->setStyleSheet("QHeaderView { font-size: 42pt; }");
Run Code Online (Sandbox Code Playgroud)
两种方式都适用于Qt-4.8.3