Russian Qt Forum

Qt => Вопросы новичков => Тема начата: demaker от Май 11, 2011, 19:38



Название: QByteArray-> QTableWidgetItem
Отправлено: demaker от Май 11, 2011, 19:38
Подскажите как записать в каждую ячейку таблицы по 2 -байта из массива QByteArray??? ???


Название: Re: QByteArray-> QTableWidgetItem
Отправлено: ieroglif от Май 11, 2011, 20:07
создай свою модель, наследующую QAbstractTableModel


Название: Re: QByteArray-> QTableWidgetItem
Отправлено: demaker от Май 11, 2011, 20:11
Если можно поконкретнее :)


Название: Re: QByteArray-> QTableWidgetItem
Отправлено: Пантер от Май 11, 2011, 20:27
Сначала ты поконкретнее. Задача не ясна. Как пытался делать? Что не получается?


Название: Re: QByteArray-> QTableWidgetItem
Отправлено: demaker от Май 11, 2011, 20:34
Мне нужно, чтобы в таблице - в каждой ячейке было отображено по 2-байта из массива(QByteArray), который ранее заполнен. Как так сделать??? Если по 1 байту то понятно

 for (int i = 1; i <= 100; i++)
        {
            cell = new QTableWidgetItem(QVariant(Buffer_Data[i-1]).toString());
            tableWidget->setItem(i-1,1,cell1);
        }
а как если два???  ???


Название: Re: QByteArray-> QTableWidgetItem
Отправлено: Пантер от Май 11, 2011, 20:44
Какой кошмар. Тебе нужно с++ сначала выучить. Почему 100, а если размер массива будет меньше? Почему цикл с 1? Почему создаешь cell, а устанавливаешь cell1?

ПыСы: и это еще далеко не все по приведенному коду...


Название: Re: QByteArray-> QTableWidgetItem
Отправлено: demaker от Май 12, 2011, 10:38
Извиняюсь с cell1 была описка ::)
А 100 это по протоколу обмена в протоколе указывается ск-ко он хочет считать не более 100
а то то-что нумерация начинается с 0 это я знаю. :)


Название: Re: QByteArray-> QTableWidgetItem
Отправлено: demaker от Май 12, 2011, 10:40
Да и что еще не то по приведенному коду :-[


Название: Re: QByteArray-> QTableWidgetItem
Отправлено: xwicked от Май 15, 2011, 17:53
Мне нужно, чтобы в таблице - в каждой ячейке было отображено по 2-байта из массива(QByteArray), который ранее заполнен. Как так сделать??? Если по 1 байту то понятно

 for (int i = 1; i <= 100; i++)
        {
            cell = new QTableWidgetItem(QVariant(Buffer_Data[i-1]).toString());
            tableWidget->setItem(i-1,1,cell1);
        }
а как если два???  ???
Условие задачи?
В QByteArray помещается число short и его нужно в строку сделать или что?
То есть, нужно 2-а числа рядом получить или одно по коду?