qt 获取动态生成的qlineedit值
来源:互联网 发布:维多利亚女王 知乎 编辑:程序博客网 时间:2024/05/23 10:57
1.头文件代码
#ifndef MAINWINDOW_H#define MAINWINDOW_H#include <QMainWindow>#include <QSettings>#include <QString>#include <QPushButton>#include <QLabel>#include <QLineEdit>#include <QWidget>#include <QFrame>#include <QObject>#include <QTableWidget>#include <QTableWidgetItem>#include <QLayout>#include <QScrollArea>#include <QGroupBox>#include <QFont>#include <QDebug>#include <QMap>#include <QAction>namespace Ui {class MainWindow;}class MainWindow : public QMainWindow{ Q_OBJECTpublic: explicit MainWindow(QWidget *parent = 0); ~MainWindow();private slots: void addbutton_Clicked(); void deletebutton_Clicked(); void lineedit_textChanged(QString text);private: Ui::MainWindow *ui;public: QVBoxLayout *middlelayout; QList<QLineEdit*> qlist; std::vector<QString> users;};#endif // MAINWINDOW_H
二.源文件
#include "mainwindow.h"#include "ui_mainwindow.h"MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow){ //ui->setupUi(this); QWidget *window = new QWidget(this); QVBoxLayout *mainlayout = new QVBoxLayout; middlelayout = new QVBoxLayout; QHBoxLayout *buttonlayout = new QHBoxLayout; QPushButton *addbutton = new QPushButton; QPushButton *deletebutton = new QPushButton; addbutton->setText("ADD"); deletebutton->setText("Delete"); buttonlayout->addWidget(addbutton); buttonlayout->addWidget(deletebutton); buttonlayout->setAlignment(Qt::AlignTop); mainlayout->addLayout(buttonlayout); mainlayout->addLayout(middlelayout); window->setLayout(mainlayout); setCentralWidget(window); connect(addbutton, SIGNAL(clicked()), SLOT(addbutton_Clicked())); connect(deletebutton, SIGNAL(clicked()), SLOT(deletebutton_Clicked()));}MainWindow::~MainWindow(){ //delete ui;}void MainWindow::addbutton_Clicked(){ QLineEdit *lineedit = new QLineEdit; qlist.push_back(lineedit); middlelayout->addWidget(lineedit); lineedit->setObjectName("lineedit"+QString::number(qlist.count())); users.resize(qlist.count()); connect(lineedit, SIGNAL(textChanged(QString)), SLOT(lineedit_textChanged(QString)));}void MainWindow::deletebutton_Clicked(){ QWidget *child; if (!middlelayout->isEmpty()) { if ((child = middlelayout->takeAt(qlist.count()-1)->widget()) != 0) { delete child; qlist.removeLast(); } }}void MainWindow::lineedit_textChanged(QString text){ QObject *obj = QObject::sender(); QString senderobjName = obj->objectName(); int isTextchanged = senderobjName.indexOf("lineedit") != -1; if (isTextchanged) { QStringList list = senderobjName.split("lineedit"); unsigned int index = list[1].toInt(); users[index] = text; qDebug() << users[index]; }}
三.效果
阅读全文
0 0
- qt 获取动态生成的qlineedit值
- QT--------QLineEdit
- Qt::QLineEdit
- 初学QT笔记: 多个QLineEdit之间的焦点设置、切换、获取
- QT 之 QLineEdit 类 的常用函数
- Qt 设置QLineEdit的输入格式
- qt中限制QLineEdit的输入范围
- Qt学习:QLineEdit的用法总结
- Qt学习:QLineEdit的程序示例
- C#获取动态生成的控件值
- Qt中QLineEdit切换
- Qt 之 QLineEdit
- QT——QLineEdit
- qt 之 QLineEdit
- Qt之QLineEdit
- Qt之QLineEdit
- Qt:QLineEdit 无法输入
- Qt常用类QLineEdit
- 如何下载android源码
- 基于物品的协同过滤算法
- PL/SQL ORA-12154: TNS:could not resolve the connect identifier specified
- HashMap原理介绍
- RTSP服务器运作
- qt 获取动态生成的qlineedit值
- web框架简介
- jdbc升级之连接池 dbcp方法和c3p0方法的比较
- java中的数据类型
- HDU 5912
- 通信网络编程第五次作业
- java打飞机小游戏
- 自定义view的进度条与手指移动事件
- restful风格接口