首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >QCalendarWidget日期名称不匹配

QCalendarWidget日期名称不匹配
EN

Stack Overflow用户
提问于 2014-11-03 04:03:33
回答 1查看 251关注 0票数 0

我的应用程序的用户有一个奇怪的问题,QCalendarWidget不能正确地在标题中呈现日期名称。你可以在这个截图上看到它:

问题是我不能重现这个。有谁知道原因是什么吗?Qt版本为5.3.0。

我不想盲目地增加应用程序中每个日历小部件的宽度。

EN

回答 1

Stack Overflow用户

发布于 2016-08-15 23:58:55

qcalendarwidget trabaja con el tamaño de la fuente del elemento

QAbstractItemView

los的表的重建。Entonces...dabo el ancho del widget,se puede hacer un loop para cual es el tamaño de letra que对应一个简单的ancho y luego resize:

代码语言:javascript
复制
    //ancho objetivo
int calendarWidth = dateDialog_width*.4;
//altura minima necesaria para satisfacer el ancho objetivo
int calendarHight;

int daysFontSize=0;

QSize size;
//voy probando el font size hasta pasarme del ancho objetivo
do
{
    daysFontSize++;
    calendar->setStyleSheet(QString("QCalendarWidget QAbstractItemView:enabled{font-size:%1px;}").arg(daysFontSize));
    size = calendar->minimumSizeHint();
}
while(size.width()<calendarWidth);

//ancho final
calendarWidth = size.width();
//alto final sin botones
calendarHight = size.height();

//porcion del widget que ocupan los botones(en %)
int buttonsHeightPercent = 25;
//pixels del widget que ocupan los botones
int buttonsHeight = calendarHight*buttonsHeightPercent/(100-buttonsHeightPercent);

//agrego la altura de los botones a la altura minima
calendarHight+=buttonsHeight;
//resize
this->calendar->setFixedWidth(calendarWidth);
this->calendar->setFixedHeight(calendarHight);

干杯!"el conocimiento pertenece al mundo“

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26703755

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档