кинотеатр Победа Лучшая поза в постели мечеть

piknad@yandex.ru

Начинающим

изучать Python

Город Уфа

мост ч/з Белую

Яндекс.Погода

Салават Юлаев Монумент Дружбы
СОДЕРЖАНИЕ

На главную страницу сайта

Установка PYTHON 3.8

Установка PyQT5 с DESIGNER в PYTON 3.8

Установка Dgango 3.0 в Windows 7. Решение проблем

Создание таблицы tablewidget; редактирование,сортировка данных в таблице в Phyton 3.81 Tkinter

Создание таблицы; редактирование,сортировка данных,вставка и удаление строк в таблице в Phyton 3.81 PyQt5. Использование Designer.

Модели в Питон 3, Python 3, PyQt5

Примеры перевода программ с Delphi в Python

Создание сайта (блога) в Pycharm

Получение кэшбэка

ПИТОН 3 ДЛЯ НАЧИНАЮЩИХ. РАБОТА С QTABLEWIDGET В PyQt5. РЕДАКТИРОВАНИЕ ПОЛЕЙ, ВСТАВКА, УДАЛЕНИЕ, РЕДАКТИРОВАНИЕ ЯЧЕЕК. ИСПОЛЬЗОВАНИЕ DESIGNER.

Использование Designer для разработки кода

1 2 3 4 5 6

Ввод данных в таблицу tablewidget через форму

Ввод данных в tablewidget

Рис. 20

После нажатия на кнопку "Ввод строк в форме" (рис.15 стр. 4).высветится форма для ввода данных (рис.20). После заполнения окон с использоанием combobox и нажатии на кнопку "Добавить", данные появятся во временной таблице tablevv . Можно ввести несколько строк. Одновременно они заносятся и в матрицу TwoWindow.mat. Также можно корректировать ячейки. Можно добавить кнопки для удаления и вставки строк в таблице. Закрываем форму с помощью стандартного крестика.

Ниже привожу текст функции, которая вводит значения полей таблицы tablevv в строку-список из 4-х полей матрицы TwoWindow.mat (рис. 21 ):

Ввод в матрицу из tablewidget

Для копирования текста без пробелов:

def dob_str(self):
global kolstr
entry_descriptionz=self.entry_description.text() #определение полей для таблицы
totalz=float(self.Edit_sum.text());costsz=self.Edit_dox.text()
#Вставка строки с данными из формы во временную таблицу
rowPosition =self.tablevv.rowCount()
self.tablevv.insertRow(rowPosition) #добавляем пустую строку
new=rowPosition;idz=new+1;kolstr=new+1

self.tablevv.setItem(new, 0, QTableWidgetItem(str(idz)))
self.tablevv.setItem(new, 1, QTableWidgetItem(entry_descriptionz))
self.tablevv.setItem(new, 2, QTableWidgetItem(costsz))
self.tablevv.setItem(new, 3, QTableWidgetItem(str(totalz)))

TwoWindow.mat.append([])#Добавление пустой строки в список из одного элемента
#Далее вводятся значения полей тавлицы в строку матрицы:
TwoWindow.mat[new].append(str(idz));TwoWindow.mat[new].append(entry_descriptionz)
TwoWindow.mat[new].append(costsz);TwoWindow.mat[new].append(str(totalz))

Рис. 21 Функция занесения значений полей временной таблицы tabvv в матрицу TwoWindow.mat

Обратимся опять к нашей основной форме. Нажмем на кнопку "Вставить строки из формы" . Тогда наши данные из матрицы занесутся в таблицу table (рис. 22):

Ввод данных в таблицу tablewidget

Рис.21. Ввод данных из временной таблицы в основную.

Ниже привожу текст функции ввода данных из матрицы в основную таблицу:

ввод данных из матрицы в tablewidget

текст для копирования без пробелов:


def vst_tabl_iz_form(self):# вставка данных из временной таблицы ввода в основную таблицу
rowPosition = self.table.rowCount()
idz=0
r=rowPosition #Кол-во строк в таблице
for i in range(kolstr): #цикл по кол-ву строк во временной таблице (kolstr)
self.table.insertRow(r) #Вставка строки
self.table.setItem(r,0, QTableWidgetItem(str(idz)))# вставка индекса основной таблицы
for j in range(1,4):
#Далее занесение значений строки матрицы TwoWindow.mat в поля таблицы table:
self.table.setItem(r,j, QTableWidgetItem(TwoWindow.mat[i][j]))
r=r+1;idz=idz+1#Увеличение номера строки основной таблицы и ее индекса

Рис. 22. Функция занесения данных из матрицы в tablewidget

Продолжение на следующей странице

1 2 3 4 5 6

Загрузка...