RoDebian
Июль 5, 2013 11:31:16
Приветствую всех! Возникла следующая проблема, имеется n кол-во переменных структурированных в графическом окне tkinter в виде таблицы(grid), необходимо сохранить данные сохранить в excel файл(*.xls) и также выводить эти данные на печать с принтера.
особенно интересуют варианты с использованием стандартных модулей и библиотек.
Заранее благодарю за помощь !
4kpt
Июль 5, 2013 15:24:37
В Exel. В этот дрэг? Ну дело ваше…
Для перевода данных необходимо сначала будет их снять из tkinter в виде списка или словаря.
Самый простой вариант: при создании всех элементов таблицы хранить их id в виде словаря, где ключами и значениями будут строка: id или строка_столбец: id. Когда нужно вынять информацию, проходимся по всему словарю и узнаем текст виджетов. Формируем информацию в новый словарь.
После этого пользуясь модулем xlwt можно собрать нужный файл формата .xls. Если нужна дока по xlwt, то пишите…
Будут вопросы - тоже можно писать :)
RoDebian
Июль 6, 2013 09:50:45
спасибо за информацию, дока по xlwt не помешает
а с выводом на печать с принтера не поможете?
4kpt
Июль 6, 2013 10:54:54
Если объясните, зачем. Легче собрать файл и потом открыть его для пользователя нужной программой. Например, если вы собираете файл .xls, то после его сбора можно запустить связанную программу (драный Exel, например) и его открыть. В этом случае пользователь сможет сам его допилить (если надо), сам настроить печать, допиленное сохранить. Короче - одна шара.
Доку добавил…
RoDebian
Июль 6, 2013 14:00:40
участвую в конкурсе на предприятии, одно из основных требований это функциональность, отдавал программу в разные отделы для того что бы ее опробовали, почти все просили возможность сохранения данных в .xls и вывод на печать сразу с программы.
исходи выложить не могу, при проверки работы на сколько мне объяснили они проверяются на наличии в интернете.
наткнулся на win32print, но как с ним управится пока что “не вкурил”
4kpt
Июль 6, 2013 17:20:54
Я такие решение не делаю. Мне они ни к чему. Вы еще намучаетесь с тем, как это все на печать выводить. Когда файл откроется в связанной программе, нужно будет просто нажать ctrl+p и вся проблема решена. Кроме того, выше, я описал все возможные плюшки, связанные с явным открытием…