На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Правила раздела *nix / gcc / Eclipse / Qt / wxWidgets / GTK+
  • При создании темы ОБЯЗАТЕЛЬНО указывайте версию тулкита / библиотеки / компилятора.
  • Перед тем как задать вопрос, сформулируйте его правильно, чтобы вас могли понять.
  • Нарушение Правил может повлечь наказание со стороны модераторов.


Полезные ссылки:
user posted image Boost по-русски
user posted image Qt по-русски
Модераторы: archimed7592
  
> Как поменять текст при перетаскивании из одной формы QTableWidget в другую , передача измененного текста в форму QTableWidget путем Drag and Drop
    Здравствуйте! у меня возникла такая проблемка - есть форма QTableWidget, у нее имеется задний фон(картинка), при перетаскивании ее на другую форму размером 3х3, необходимо что бы картинка оставалась такой же, а вот текст менялся на нужный мне. Как это реализовать путем dragEnterEvent и dropEvent? И есть ли другие способы это сделать?
    P.S Формы отображаются в отдельном классе/виджете.
    Главная форма
    ExpandedWrap disabled
      GameScr::GameScr(QWidget *parent) :
          QWidget(parent),
          ui(new Ui::GameScr)
      {
          ui->setupUi(this);
          //Объявление новых классов
          Inventory *invent;
          invent = new Inventory();
          tester *t;
          t = new tester();
          setAcceptDrops(true);
       
          //добавление виджетов на сцену
          scene2 = new QGraphicsScene(this);
          scene2->addWidget(t);
          scene = new QGraphicsScene(this);
          scene->addWidget(invent);
       
          //установка отображения сцен
          ui->graphicsView->setScene(scene);
          ui->graphicsView_2->setScene(scene2);
          //Для коректного отображения указываю размеры сцены
          scene->setSceneRect(0,0,900,600);
       
      }


    Форма предмета
    ExpandedWrap disabled
      tester::tester(QWidget *parent) :
          QWidget(parent),
          ui(new Ui::tester)
      {
          ui->setupUi(this);
          bd = new DataBase();
          img = bd->getItem(1);
       
          ui->tableWidget->item(0,0)->setBackground(QBrush(QPixmap(":/res/img/apple2.jpg")));
          ui->tableWidget->setStyleSheet("QTableWidget::item{background-image: url(:/res/img/apple2.jpg)}");
       
       
          setAcceptDrops(true);
          ui->tableWidget->setDragDropOverwriteMode(true);
          ui->tableWidget->viewport()->setAcceptDrops(true);
          ui->tableWidget->setDropIndicatorShown(true);
      }

    Форма инвентаря
    ExpandedWrap disabled
      Inventory::Inventory(QWidget *parent) :
          QWidget(parent),
          ui(new Ui::Inventory)
      {
          ui->setupUi(this);
       
          setAcceptDrops(true);
       
       
          ui->tableWidget->setDragDropOverwriteMode(true);
          ui->tableWidget->viewport()->setAcceptDrops(true);
          ui->tableWidget->setDropIndicatorShown(true);
       
      }


    Платформа Windows 10. Qt - 5.9.1
    0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
    0 пользователей:


    Рейтинг@Mail.ru
    [ Script execution time: 0,0173 ]   [ 16 queries used ]   [ Generated: 28.03.24, 17:57 GMT ]