本文整理汇总了C++中QMargins::isNull方法的典型用法代码示例。如果您正苦于以下问题:C++ QMargins::isNull方法的具体用法?C++ QMargins::isNull怎么用?C++ QMargins::isNull使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类QMargins
的用法示例。
在下文中一共展示了QMargins::isNull方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: updateFrameStrut
void QWidgetPrivate::updateFrameStrut()
{
Q_Q(QWidget);
if (q->data->fstrut_dirty) {
if (QTLWExtra *te = maybeTopData()) {
if (te->window) {
if (const QPlatformWindow *pw = te->window->handle()) {
const QMargins margins = pw->frameMargins();
if (!margins.isNull()) {
te->frameStrut.setCoords(margins.left(), margins.top(), margins.right(), margins.bottom());
q->data->fstrut_dirty = false;
}
}
}
}
}
}
示例2: FixRatioTransform
QMargins MainPanel::FixRatioTransform(const QMargins &g)
{
if(g.isNull())
return g;
Screen* s = ui->panel->CurrentPage()->ScreenWidget();
QSize intend = (s->geometry() + g).size();
int sum = g.left()+g.top()+g.right()+g.bottom();
QSize except = _fixRatio.scaled(intend, (sum > 0 ? Qt::KeepAspectRatioByExpanding : Qt::KeepAspectRatio)) - s->size();
QMargins ret;
qreal h = g.left() + g.right();
qreal v = g.top() + g.bottom();
if(h)
{
ret.setLeft(g.left() / h * except.width());
ret.setRight(g.right() / h * except.width());
}
else
ret.setRight(except.width());
if(v)
{
ret.setTop(g.top() / v * except.height());
ret.setBottom(g.bottom() / v * except.height());
}
else
ret.setBottom(except.height());
return ret;
}