WxPython: как отредактировать имена строк и столбцов для сетки cSheet и сделать ячейки недоступными для редактирования?

В настоящее время я передаю информацию в программу с графическим интерфейсом wxPython в режиме реального времени. Я хотел бы создать настраиваемую сетку ячеек 4x4 в стиле электронной таблицы, которая постоянно отображает значения для обновляемой матрицы и отправляется в графический интерфейс. Можно ли изменить имена строк и столбцов по умолчанию (например, от 1234 и ABCD до ACGT и ACGT) для wxPython cSheet и сделать ячейки недоступными для редактирования?

Любые предложения или советы будут оценены. Заранее спасибо.


person Community    schedule 27.07.2011    source источник


Ответы (1)


wx.lib.sheet.CSheet класс расширяет wx.grid.Grid, есть методы SetColLabelValue и SetRowLabelValue:

names = 'ACGT'
sheet = CSheet(panel)
for index, name in enumerate(names):
    sheet.SetColLabelValue(index, name)
    sheet.SetRowLabelValue(index, name)
sizer.Add(sheet)

Вы можете сделать ячейки недоступными для редактирования, вызвав метод SetReadOnly для каждой ячейки.

UPD: Как @VZ. отметил: EnableEditing(false) делает вашу сетку нередактируемой.

person alecxe    schedule 27.04.2013
comment
Чтобы сделать всю сетку доступной только для чтения, проще вызвать EnableEditing(false). - person VZ.; 28.04.2013
comment
Спасибо, я включил ваш комментарий в ответ. - person alecxe; 28.04.2013