PDA

View Full Version : please help me .. How Disable Move Focus / Cursor when Invalid input value ?



agoestafin
15th January 2010, 07:46
Hi All,
Please Helpme
I try create QtableWidget and QitemDelegate . ( QLineEdit )
how stop move cursor / focus when invalid input ? in QlineEdit
??

numbat
15th January 2010, 10:10
Probably, the easiest is to just setFlags on all the other cells:


void DisableAllExceptOne(QTableWidget & tbl, const QTableWidgetItem & allowed)
{
for (int i = 0; i < tbl.rowCount(); i++)
for (int j = 0; j < tbl.columnCount(); j++)
if (!(tbl.item(i, j)->row() == allowed.row() &&
tbl.item(i, j)->column() == allowed.column()))
tbl.item(i, j)->setFlags(Qt::NoItemFlags);
}

int main(int argc, char * argv[])
{
QApplication a(argc, argv);

QTableWidget tbl;
tbl.setRowCount(1);
tbl.setColumnCount(3);

QTableWidgetItem * item1 = new QTableWidgetItem("ONE");
tbl.setItem(0, 0, item1);

QTableWidgetItem * item2 = new QTableWidgetItem("TWO");
tbl.setItem(0, 1, item2);

QTableWidgetItem * item3 = new QTableWidgetItem("THREE");
tbl.setItem(0, 2, item3);

DisableAllExceptOne(tbl, *item1);
tbl.show();

return a.exec();
}

agoestafin
16th January 2010, 04:22
great i'll try ..