本文整理汇总了C++中QCalendarWidget::setCurrentPage方法的典型用法代码示例。如果您正苦于以下问题:C++ QCalendarWidget::setCurrentPage方法的具体用法?C++ QCalendarWidget::setCurrentPage怎么用?C++ QCalendarWidget::setCurrentPage使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类QCalendarWidget
的用法示例。
在下文中一共展示了QCalendarWidget::setCurrentPage方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: s_searchFecha
void BlDateSearch::s_searchFecha()
{
BL_FUNC_DEBUG
QDialog *diag = new QDialog ( 0 );
diag->setModal ( true );
QCalendarWidget *calend = new QCalendarWidget ( diag );
/// Se pone el 1er dia del calendario a lunes.
calend->setFirstDayOfWeek ( Qt::Monday );
/// Evitar fechas demasiado antiguas
calend->setMinimumDate( QDate ( 1900, 1, 1 ) );
/// Si el campo estaba vacío, seleccionar una fecha imposible, pero mostrar el mes actual
if ( m_textoFecha->text().isEmpty() ) {
calend->setSelectedDate ( calend->minimumDate() );
calend->setCurrentPage ( QDate::currentDate().year(), QDate::currentDate().month() );
}
/// Si ya hay una fecha en el campo, abrir el calendario con ese día seleccionado inicialmente
else {
calend->setSelectedDate ( blNormalizeDate ( m_textoFecha->text() ) );
}
connect ( calend, SIGNAL ( activated ( const QDate & ) ), diag, SLOT ( accept() ) );
/// Creamos un layout donde estara el contenido de la ventana y la ajustamos al QDialog
/// para que sea redimensionable y aparezca el titulo de la ventana.
QHBoxLayout *layout = new QHBoxLayout;
layout->addWidget ( calend );
layout->setMargin ( 0 );
layout->setSpacing ( 0 );
diag->setLayout ( layout );
diag->setWindowTitle ( _ ( "Seleccione fecha" ) );
diag->exec();
/// Si la fecha es imposible, significa que el usuario no ha seleccionado una fecha
/// y su campo debe quedarse como estaba: vacío
if ( calend->selectedDate() != QDate ( 1900, 1, 1 ) ) {
m_textoFecha->setText ( calend->selectedDate().toString ( "dd/MM/yyyy" ) );
}
/// Liberamos la memoria
delete layout;
delete calend;
delete diag;
emit ( valueChanged ( m_textoFecha->text() ) );
emit ( editingFinished () );
}
示例2: showPrevNext
void tst_QCalendarWidget::showPrevNext()
{
QFETCH(ShowFunc, function);
QFETCH(QDate, dateOrigin);
QFETCH(QDate, expectedDate);
QCalendarWidget calWidget;
calWidget.show();
QVERIFY(QTest::qWaitForWindowExposed(&calWidget));
if(!dateOrigin.isNull()) {
calWidget.setSelectedDate(dateOrigin);
calWidget.setCurrentPage(dateOrigin.year(), dateOrigin.month());
QCOMPARE(calWidget.yearShown(), dateOrigin.year());
QCOMPARE(calWidget.monthShown(), dateOrigin.month());
} else {
QCOMPARE(calWidget.yearShown(), QDate::currentDate().year());
QCOMPARE(calWidget.monthShown(), QDate::currentDate().month());
}
(calWidget.*function)();
QCOMPARE(calWidget.yearShown(), expectedDate.year());
QCOMPARE(calWidget.monthShown(), expectedDate.month());
// QTBUG-4058
QTest::qWait(20);
QToolButton *button = calWidget.findChild<QToolButton *>("qt_calendar_prevmonth");
QTest::mouseClick(button, Qt::LeftButton);
expectedDate = expectedDate.addMonths(-1);
QCOMPARE(calWidget.yearShown(), expectedDate.year());
QCOMPARE(calWidget.monthShown(), expectedDate.month());
if(!dateOrigin.isNull()) {
//the selectedDate should not have changed
QCOMPARE(calWidget.selectedDate(), dateOrigin);
}
}