#include "basicproperty.h" #include "ui_basicproperty.h" #include "collectionwindow.h" #include "statusconfiguration.h" #include "containerpool.h" #include #include #include #include #include #include #include //TODO:左侧添加列表,支持添加删除元素,右边的UI保持不变,设计数据类存储元素对应的数据 BasicProperty::BasicProperty(QWidget *parent) : QMainWindow(parent), ui(new Ui::BasicProperty) { ui->setupUi(this); QPixmap pix("/Users/menglanluo/pic.png"); ui->label_pic->setPixmap(pix.scaled(50,50,Qt::KeepAspectRatio)); ui->tabWidget_collection->addTab(new CollectionWindow(),"mallColl"); ui->tabWidget_status->addTab(new StatusConfiguration(),"1"); ui->tabWidget_container->addTab(new ContainerPool(),"pool1"); this->setAcceptDrops(true); resource = new QLineEdit(this); resource->setAcceptDrops(false); ui->tableWidget_animation->setHorizontalHeaderLabels({"名称","资源","时间线","z-Order"}); // ui->tableWidget_animation->insertRow(0); // ui->tableWidget_animation->setCellWidget(0,0,new QLineEdit); // ui->tableWidget_animation->setCellWidget(0,1,new QLineEdit); } BasicProperty::~BasicProperty() { delete ui; delete resource; } void BasicProperty::on_pushButton_chooseFile_clicked() { QString file_name = QFileDialog::getOpenFileName(this,"Open a file",QDir::homePath()); QPixmap pix(file_name); ui->label_pic->setPixmap(pix.scaled(50,50,Qt::KeepAspectRatio)); } void BasicProperty::dragEnterEvent(QDragEnterEvent *event) { if(event->mimeData()->hasUrls()){ event->acceptProposedAction(); } else{ event->ignore(); } } void BasicProperty::dropEvent(QDropEvent *event) { const QMimeData *mimeData = event->mimeData(); if(mimeData->hasUrls()){ QList urls = mimeData->urls(); QString urlName = urls.at(0).toLocalFile(); QString fileName = urlName; resource->setText(fileName); } } //TODO: 添加表格对应的元素 void BasicProperty::on_pushButton_addAnimation_clicked() { // QLineEdit *nameLine = new QLineEdit(this); // QLineEdit *re = new QLineEdit(this); // re->setAcceptDrops(false); int rowNum = ui->tableWidget_animation->rowCount(); ui->tableWidget_animation->insertRow(rowNum); ui->tableWidget_animation->setCellWidget(rowNum,0,new QLineEdit); ui->tableWidget_animation->setCellWidget(rowNum,1,resource); } void BasicProperty::printTable() { // QWidget *w = ui->tableWidget_animation->cellWidget(0,0); // std::cout<<"name:"<text())<