如何在单击按钮时将字符串和int添加到QTableView
How to add a string and an int to a QTableView when a button is clicked
单击按钮时,如何将QSting和int同时添加到tableView?
我想要的是第一列有名字,第二列有数字。单击按钮时,需要在同一行添加两个项目。
Col 1--- Col 2---
First Name 1
Second Name 2
Third Name 3
这是我添加两个字符串的方法,如何将第二个单元格转换为int?
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
model = new QStandardItemModel();
model->setRowCount(0);
ui->tableView->setModel(model);
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::on_pushButton_clicked()
{
QStandardItem *userName = new QStandardItem(ui->lineEdit_Name->text());
QStandardItem *userNumber = new QStandardItem(ui->lineEdit_Number->text());
QList<QStandardItem*> row;
row <<userName << userNumber;
model->appendRow(row);
}
非常感谢
它真的必须是一个整数吗?或者它看起来像一个整数?
传统上,在表格中,文本显示为左对齐,数字显示为右对齐。你可以通过设置第二列的对齐方式来获得这种效果:
QStandardItem *userNumber = new QStandardItem(ui->lineEdit_Number->text());
userNumber->setAlignment(Qt::AlignRight | Qt::AlignVCenter);
如果您需要在程序中的其他地方将数据用作整数,您可以在需要时将QString转换为整数。
好的,我将收集所有答案:
第一:
QStandardItemModel中的每个数据都是QVariant,因此您可以查询中的数据
-
到具有的模型
虚拟QVariant数据(const QModelIndex&index,int role=Qt::DisplayRole)const
-
到QStandardItem,带有:
虚拟QVariant数据(int role=Qt::UserRole+1)const
两者都将返回一个QVariant。你可以用得到int
int toInt(bool * ok = 0) const
请注意,bool是可选的,但如果转换是可行的,它将返回true。
此外,您可以检查它是否可以转换为int:
bool QVariant::canConvert(int targetTypeId) const
yourVariant.canConvert( QMetaType::Int ) should return true.
为了得到你想要的。我会使用QStandardItemModel:中的takeRow方法
QList<QStandardItem *> takeRow(int row)
这与附加行的操作相反。因此,您可以向返回的QList的第二个元素询问Int值。
相关文章:
- 将布尔变量添加到 int
- 如果 x < 10,则添加前导 0 并将其存储为 int
- "Missing type specifier - int assumed"无法通过向主函数添加"return 0"来解决
- 赋值和添加运算符重载(2个表和int的串联)
- 向size_t添加 int 的正确方法
- C++在减去 int 时向 int 添加一个额外的数字
- 尝试将 char* 添加到 int 时触发编译器错误
- 当我向 vector<int *> 添加元素时,我遇到了一些问题
- 重载 + 运算符以使用 int 添加对象
- 将 int 添加到长整型
- 如果我将未签名的int添加到负int且算术结果是正面的,会发生什么
- 将字符串和 int 添加到字符串中
- 如何在 C/C++ 中将 int 添加到 char[]
- 在 c# 中将 int 添加到字符以将其 ascii 值向上移动(就像在 c++ 中一样)
- 如何在单击按钮时将字符串和int添加到QTableView
- 在c++中,如何从字符串中删除字母,并从字母中向int添加一个数字
- 将unsigned int添加到int
- 如何将C++ "int"添加到哈希集<Integer>?
- C++ 将字节值作为 int 添加到 CString
- 当我将 int 添加到字符时调用哪个运算符 + 函数('a' + 1)