Russian Qt Forum
Май 04, 2024, 03:46 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Копирование содержимого ячеек QTableWidget в "буфер"  (Прочитано 5057 раз)
catprog
Гость
« : Октябрь 05, 2009, 11:28 »

Как можно сделать возможной такую схему: выделяется несколько ячеек в таблице, потом Ctrl+C и вставить в Excel например?
Записан
BaltikS
Гость
« Ответ #1 : Октябрь 05, 2009, 14:20 »

Пример в книге Бланшета.....там про создание таблице типа Excel и там есть копирование
Записан
catprog
Гость
« Ответ #2 : Октябрь 07, 2009, 11:45 »

Спасибо, нашел.
Если кто еще будет искать, то в моем исполнении получилось вот так:
Код:
void MainWindow::on_myCopy()
{   
    QTableWidgetItem *tmp_cell;
    QString table_cells = "";
    QTableWidgetSelectionRange range;
    QList <QTableWidgetSelectionRange> ranges = ui->tableWidget->selectedRanges();
    if (ranges.isEmpty()) { range = QTableWidgetSelectionRange(); } else { range = ranges.first(); }
    for (int i=0;i<range.rowCount();i++)
    {
        if (i>0) { table_cells += "\n"; }
        for (int j=0;j<range.columnCount();j++)
        {
            if (j>0) { table_cells += "\t"; }
            tmp_cell = ui->tableWidget->item(range.topRow()+i,range.leftColumn()+j);
            if (tmp_cell)
            { table_cells += tmp_cell->text(); } else { table_cells += ""; }
        }
    }
    myclipboard->setText(table_cells); // заполнение буфера обмена
}
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.054 секунд. Запросов: 21.