本文整理汇总了C++中QTableWidgetItem::backgroundColor方法的典型用法代码示例。如果您正苦于以下问题:C++ QTableWidgetItem::backgroundColor方法的具体用法?C++ QTableWidgetItem::backgroundColor怎么用?C++ QTableWidgetItem::backgroundColor使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类QTableWidgetItem
的用法示例。
在下文中一共展示了QTableWidgetItem::backgroundColor方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: provideContextMenu
void LogViewerForm::provideContextMenu(const QPoint& p)
{
QTableWidgetItem* item = ui->tableWidget->itemAt(p);
if (item != NULL && item->backgroundColor() == HighlightColor) {
QAction* const action = mMenu->exec(mapToGlobal(p));
if (action != NULL) {
bool ok = false;
const int selected = ui->tableWidget->item(item->row(), 1)->text().toInt(&ok);
Q_ASSERT(ok);
const int generation = ui->tableWidget->item(item->row(), 2)->text().toInt(&ok);
Q_ASSERT(ok);
switch (action->data().toInt())
{
case ShowPicture:
emit showPicture(generation, selected);
break;
case CopyToClipboard:
emit copyPicture(generation, selected);
break;
case GoToFolder:
emit gotoPicture(generation, selected);
break;
default:
#ifndef QT_NO_DEBUG
qWarning() << "unknown command:" << action->data().toInt();
#endif
break;
}
}
}
}
示例2: currentRowColumnChanged
void SearchResultWidget::currentRowColumnChanged(int currentRow, int /*currentColumn*/, int previousRow, int /*previousColumn*/)
{
if (currentRow == previousRow) {
return;
}
for (int col = 0; col < 3; ++col) {
QTableWidgetItem* previousRowItem = searchTable->item(previousRow, col);
QTableWidgetItem* currentRowItem = searchTable->item(currentRow, col);
if (previousRowItem && col != 0) {
QColor color = previousRowItem->data(Qt::UserRole + 15).value<QColor>();
if (color.isValid()) {
previousRowItem->setBackgroundColor(color);
}
}
if (currentRowItem) {
QString text = currentRowItem->text();
if (col == 2 && !viewedItems.contains(text)) {
viewedItems << text;
}
currentRowItem->setData(Qt::UserRole + 15, currentRowItem->backgroundColor());
currentRowItem->setBackgroundColor(QColor(Qt::green).lighter(170));
}
}
}
示例3: recvStatusChanged
void MainWindow::recvStatusChanged(Status s)
{
QString str;
str.sprintf("%d %d", s.first, s.second);
ui->textEdit->append(str);
QTableWidgetItem *item = ui->tableWidget->item(s.second,s.first);
if(item){
QColor c = item->backgroundColor();
c.setRed(min(c.red() + 1,255));
item->setBackgroundColor(c);
}
}
示例4: displayEvents
void MainWindow::displayEvents(QDate debut, QDate fin) {
this->current_debut = debut;
this->current_fin = fin;
QColor color(130,130,255);
agenda_widget->clearContents();
if (this->em) {
qDebug()<<"Mise à jour des events de la vue de la fenêtre principale";
vector<Evenement*> v = em->getFromPeriod(debut,fin);
Evenement* ev;
for (vector<Evenement*>::const_iterator it = v.begin(); it != v.end(); ++it) {
color.setRgb(((color.red()+rand())%150)+106,((color.green()+rand())%150)+106,((color.blue()+rand())%150)+106); // que des couleurs claires
ev = *it;
int start_colonne = debut.daysTo(ev->getDateDebut());
int end_colonne = debut.daysTo(ev->getDateFin());
int start_ligne = ev->getHeureDebut().hour();
int end_ligne = ev->getHeureFin().hour()-1;
int i = start_colonne>=0?start_colonne:0;
int i_end = end_colonne<=6?end_colonne:agenda_widget->columnCount()-1;
int j = start_colonne>=0?start_ligne:0;
int j_end = end_colonne<=6?end_ligne:agenda_widget->rowCount()-1;
int k = j;
for (i;i<=i_end;i++) {
for (k; k<agenda_widget->rowCount()&&(i!=i_end||k<=j_end); k++) {
//qDebug()<<"i:"<<i<<"\t k:"<<k;
QTableWidgetItem* item;
if ((item = agenda_widget->item(k,i)) == nullptr) {
agenda_widget->setItem(k,i, new QTableWidgetItem(ev->getTitre()));
agenda_widget->item(k,i)->setBackgroundColor(color);
//agenda_widget->item(k,i)->setFlags(agenda_widget->item(k,i)->flags() ^ Qt::ItemIsEditable);
}
else {
item->setText(item->text()+" ; "+ev->getTitre());
QColor tmp = item->backgroundColor();
tmp.setRgb((tmp.red()+color.red())/2,(tmp.green()+color.green())/2,(tmp.blue()+color.blue())/2);
item->setBackgroundColor(tmp);
}
}
k = 0;
}
}
}
}
示例5: selectColor
void SpreadSheet::selectColor()
{
QTableWidgetItem *item = table->currentItem();
QColor col = item ? item->backgroundColor() : table->palette().base().color();
col = QColorDialog::getColor(col, this);
if (!col.isValid())
return;
QList<QTableWidgetItem*> selected = table->selectedItems();
if (selected.count() == 0)
return;
foreach(QTableWidgetItem *i, selected)
if (i)
i->setBackgroundColor(col);
updateColor(table->currentItem());
}
示例6: on_channel_table__cellClicked
//-----------------------------------------------------------------------------
void ChannelSelectionDialog::on_channel_table__cellClicked (int row, int column)
{
QTableWidgetItem* item = ui_.channel_table_->item (row, column);
if (column == LABEL_INDEX_)
{
self_setting_ = true;
if (item->checkState() == Qt::Checked)
item->setCheckState (Qt::Unchecked);
else
item->setCheckState (Qt::Checked);
}
else if (column == COLOR_INDEX_)
{
QColorDialog color_dialog (item->backgroundColor (), this);
if (color_dialog.exec () == QDialog::Accepted)
updateColor (row, color_dialog.selectedColor ());
}
self_setting_ = false;
}