Как стать автором
Обновить
12
0
Артур @dikkini

Пользователь

Отправить сообщение
Ммм, без панели все ваши элементы будут на форме, на темном фоне. Попробуйте создать фрейм и на него положить элементы в сайзере, увидите что получится.
Не получается. У меня был опыт установки XEN с различными вирутальными машинами и них висели различные службы и сервисы, включая одну вируальную машину я использовал как домашний сервер с вайфаем, фтп, самба и т.д.
А начало все банально: нужен был вай фай, не хотел тратить деньги на роутер, решил забрать у матери из школы ее старый системник, почистил, заменил пару деталей, пересобрал и понеслась, а потом продал его как сервер компании за большие деньги. Вот за то время пока собирал и пока не продал я и написал эти две статьи.
Где вы видите установку ГУИ? Все настраивается из консоли.
в суське есть очень удобный инструмент для подобных задач — YaST2. Причем как графический так и консольный. Там есть утилита аля System Run Levels и там можно выбрать автозапуск всего и вся.
Следующая статья будет про кеширующий DNS сервер, настройку XEN. отдельная машина под управлением Endian Firewal Community и еще много идей и фишек.
Продолжать статьи на эту тему или нет?
Есть еще такие элементы как дерево, popup окна, тул типы, rich text ctrl и еще много чего.
Статья написана с пол-года назад.
Не знал, но никогда не испытывал трудности с ним. Спасибо.
habrahabr.ru/blogs/python/137369/
Собственно поэтому я и решил сразу в дебри.
Красивее и сложнее. Это если совсем коротко.
Промежуточная панель между формой и элементами?
Дайте пожалуйста ссылки на все детали. А то вбиваю на ebay там этих Attiny13 очень много…
поправка:
6. Да, импорт strings есть.
везде согласен, кроме:
4. Пустой массив правильно отрабатывает.
6. А зачем? Работает без импорта. Почему выдает варн?
8. Таких «фич» набирается по 10 штук на форму, что делать-то?

Что делать-то? Хочется пользоваться Вашей программой, а не получается :(
Загрузил в PyCharm практически готовый проект. Провел полную инспекцию (за исключением «старых классов» и докстрингов). Вот итоги:
1.
try:
index = self.list.GetFirstSelected()
self.date = self.list.GetItemText(index)
except:
print 'error'

 Problem synopsis:           Too broad exception clause (at line 70)

2.
try:
result = avgall / allweight
except ZeroDivisionError, info:
print info
self.data.append(str(result)) # Вот здесь ругается.

Local variable 'result' might be referenced before assignment (at line 271)

3.
def get_cols(self, table):
try:
cursor = cx_Oracle.Cursor(self.connection)
sql = ("select t.COLUMN_ID, t.COLUMN_NAME from all_tab_columns t where t.TABLE_NAME=\'%s\' order by t.COLUMN_ID") % table
cursor.execute(sql)
cuu=cursor.fetchall()
cursor.close()
col_names = [i[1] for i in cuu]
except (NameError, cx_Oracle.DatabaseError), info:
error = ("Database Error: %s" % info)
wx.MessageBox(str(error))
return col_names # Здесь ругается


Problem synopsis:           Local variable 'col_names' might be referenced before assignment (at line 98)

4.

В проекте хитро организован wx.listctrl. И есть такой кусок кода:
self.columns = self.main.main_stat_columns
for col, text in enumerate(self.columns):
self.list.InsertColumn(col, text)
for item in rows:
info = '%s:(%s)' % (col, item)
data.append(info)


Переменная col нигде не объявляется и ниоткуда не берется, она берется сразу здесь.
Problem synopsis:           Local variable 'col' might be referenced before assignment (at line 26)

5.

def show_help(self, event):
frame = help_frame.help_frame()
frame.Show()


     Problem synopsis:           Unresolved attribute reference 'Show' for class 'help_frame' (at line 229)

6.

for x in val:
if x not in string.digits:
return False


     Problem synopsis:           Unresolved reference 'string' (at line 199)

7.

app = wx.PySimpleApp()
dlg = MyDialog()
dlg.ShowModal()
dlg.Destroy()
app.MainLoop()

Problem synopsis:           Unresolved attribute reference 'MainLoop' for class 'PySimpleApp' (at line 72)

8.

def OnExit( self, event ):
self.Destroy()


     Problem synopsis:           Parameter 'event' value is not used (at line 96)

def OnExit( self, event ):
self.Destroy()
event.Skip()


     Problem synopsis:           Unresolved reference 'event' (at line 98)

9.

wx.ALL # and etc. Все компоненты wxPython, за исключением wx.Frame and etc.

     Problem synopsis:           Unexpected argument (at line 27)

Соответственно я привел по одному примеру каждого варна, а таких около 500. А теперь представьте себе работу в редакторе который справа подсвечивает около 100 варнов только в одном модуле, т.е. работа становится не возможной.

Надеюсь помог развитию проекта :)
Щас запустил дома, проверил про компилирование — всё хорошо.

Щас загрузил доделываемый проект в PyCharm 2.0.2, отпостю все косяки и всю инспекицю, если интересует.
ээм, а разве Community Edition не бесплатная должна быть? Endian Firewall Community Edition как пример.
Да, еще кое-что забыл. Pycharm на все переменные аля wx.Size (100, 100), wx.ALL, wx.EXPAND из wx.Python ругается очень страшно.

А все классы:
class Test():
def __init__(self):
bla bla bla

Обзывает «старыми» и предлагает так:
class Test(object):
bla bla bla
Стоит версия 2.0.2, косяк следующий: открываю проект, правлю файл *.py, запускаю Run, файл компилится тот что без изменений… Очень странное поведение. Поправил код, нажал Ctrl+S (Save all, как сохранить отдельный файл (не Save as...) я не нашел), опять аналогичный бред, компилится без изменений, при нажатии на ссылку на строку с ошибкой, открывается ЕЩЕ одно вкладка с таким же файлом, который правил, только без исправлений. Объясните пожалуйста где не прав.

p.s. В EAP тоже самое.

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность