您当前的位置: 首页 >  qt

txwtech

暂无认证

  • 4浏览

    0关注

    813博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

QT在便捷类中启动拖放

txwtech 发布时间:2022-10-06 21:36:57 ,浏览量:4

//在便捷类中启动拖放
    //设置选择模式为单选
    listWidget.setSelectionMode(QAbstractItemView::SingleSelection);
    //启用拖动
    listWidget.setDragEnabled(true);
    //设置接受拖放
    listWidget.viewport()->setAcceptDrops(true);
    //设置显示将要放置的位置
    listWidget.setDropIndicatorShown(true);
    //设置拖放模式为移动项目,如果不设置,默认为复制项目
    listWidget.setDragDropMode(QAbstractItemView::InternalMove);
    tableWidget.move(1000,100);

拖动a,b或c3看效果

 

pro文件:

QT+=widgets

SOURCES += \
    main.cpp

main.cpp 

#include 
#include 
#include 
#include 
#include 

int main(int argc, char *argv[])
{
    QApplication app(argc,argv);
    QListWidget listWidget;
    //一种添加项目的简便方法
    new QListWidgetItem("a",&listWidget);
    //添加项目的另一种方法,这样还可以进行各种设置
    QListWidgetItem *listWidgetItem=new QListWidgetItem;
    listWidgetItem->setText("b");
    listWidgetItem->setIcon(QIcon("../src16_10modelview2/mudan.png"));//  ../是cpp的当前目录
    listWidgetItem->setToolTip("this is b");
    listWidget.insertItem(1,listWidgetItem);
    QListWidgetItem *listWidgetItem2=new QListWidgetItem("c3");
    listWidget.insertItem(2,listWidgetItem2);
    //倒序排序
    listWidget.sortItems(Qt::DescendingOrder);
    listWidget.show();
    listWidget.move(300,100);

    //QTreeWidget使用方法
    QTreeWidget treeWidget;
//必须设置列数
treeWidget.setColumnCount(2);
   //设置标头
   QStringList headers;
    headerssetText(0,"Grade2");
    QTreeWidgetItem *student2=new QTreeWidgetItem(grade2);
    student2->setText(0,"Tom2");
    student2->setText(1,"1983");

    QTreeWidgetItem *grade3=new QTreeWidgetItem(&treeWidget,grade2); //指定grade1为它的前一个项目
    grade3->setText(0,"Grade3");
    QTreeWidgetItem *student3=new QTreeWidgetItem(grade3);
    student3->setText(0,"Tom3");
    student3->setText(1,"1988");

    //删除当前的项目
    //先获取当前项目的父项目
//    QTreeWidgetItem *parent=currentItem->parent();
//    int index;
//    if(parent)
//    {
//        index=parent->indexOfChild(treeWidget->currentItem());
//        delete parent->takeChild(index);
//    }
//    else
//    {
//        index=treeWidget.indexOfTopLevelItem(treeWidget->currentItem());
//        delete  treeWidget.takeTopLevelItem(index);
//    }

//    //在当前项目之后添加新的项目
//    QTreeWidgetItem *parent=currentItem->parent();
//    QTreeWidgetItem *newItem;
//    if(parent)
//    {
//        newItem=new QTreeWidgetItem(parent,treeWidget->currentItem());
//    }
//    else
//    {
//        newItem=new QTreeWidgetItem(treeWidget,treeWidget->currentItem());
//    }
    treeWidget.show();
    treeWidget.move(700,100);

    //项目视图便捷类QTableWidget
    QTableWidget tableWidget(3,2);//创建表格部件,同时指定行数和列数
   //创建表格项目,并插入到指定单元
    QTableWidgetItem *tableWidgetItem=new QTableWidgetItem("qt");
    QTableWidgetItem *tableWidgetItem2=new QTableWidgetItem("cd001");
    QTableWidgetItem *tableWidgetItem22=new QTableWidgetItem("cd002");
    QTableWidgetItem *tableWidgetItem222=new QTableWidgetItem("cd003");
    tableWidget.setItem(1,1,tableWidgetItem);
    tableWidget.setItem(0,0,tableWidgetItem2);
    tableWidget.setItem(1,0,tableWidgetItem22);
    tableWidget.setItem(2,0,tableWidgetItem222);
    //创建表格项目,并将它们作为标头
    QTableWidgetItem *headerV=new QTableWidgetItem("first");
  //  tableWidget.setVerticalHeaderItem(0,headerV);
    QTableWidgetItem *headerH=new QTableWidgetItem("ID");
    tableWidget.setHorizontalHeaderItem(0,headerH);
    QTableWidgetItem *header2=new QTableWidgetItem("Language");
    tableWidget.setHorizontalHeaderItem(1,header2);
    tableWidget.show();

    //在便捷类中启动拖放
    //设置选择模式为单选
    listWidget.setSelectionMode(QAbstractItemView::SingleSelection);
    //启用拖动
    listWidget.setDragEnabled(true);
    //设置接受拖放
    listWidget.viewport()->setAcceptDrops(true);
    //设置显示将要放置的位置
    listWidget.setDropIndicatorShown(true);
    //设置拖放模式为移动项目,如果不设置,默认为复制项目
    listWidget.setDragDropMode(QAbstractItemView::InternalMove);
    tableWidget.move(1000,100);


    return app.exec();
}

关注
打赏
1665060526
查看更多评论
立即登录/注册

微信扫码登录

0.0389s