Портал Python-программистов : Общий : GUI http://www.python.com.ua/forum Портал Python-программистов http://backend.userland.com/rss Общий :: GUI :: Опять о wxGrid, события! proDivahttp://www.python.com.ua/forum/viewtopic.php?pid=8538#p8538 8538@http://www.python.com.ua/forum <p><strong>Андрей Светлов</strong><br />Спасибо! За что люблю этот форум, так это за быструю помощь, что есть самое ценное!</p> Thu, 11 Oct 2007 12:00:42 +0000 Общий :: GUI :: Опять о wxGrid, события! Андрей Светловhttp://www.python.com.ua/forum/viewtopic.php?pid=8537#p8537 8537@http://www.python.com.ua/forum <p>Бери у event: event.GetCol(), event.GetRow() и т.д.<br />Кстати, свежий wx ругается на <br />from wxPython.wx import *<br />from wxPython.grid import *<br />нужно менять на <br />from wx import *<br />from wx.grid import *<br />Только нужно заменять wxFrame на wx.Frame, wxALL на wx.ALL etc.<br />работает и на несвежих :)<br /><br />P.S. хорошо поставленный вопрос. Имея такой пример, решение проблемемы заняло примерно столько же времени, сколько и написание этого ответа. Спасибо, экономишь свое и чужое время.</p> Thu, 11 Oct 2007 11:50:11 +0000 Общий :: GUI :: Опять о wxGrid, события! proDivahttp://www.python.com.ua/forum/viewtopic.php?pid=8530#p8530 8530@http://www.python.com.ua/forum <p>Вот пример:</p><div class="codebox"><div class="incqbox"><h4>Код: :python:</h4><div class="scrollbox" style="height: 35em"><pre dir="ltr"><span style="color: #808080; font-style: italic;"># -*- coding: cp1251 -*-</span> &nbsp; <span style="color: #483d8b;">"Пример работы с гридом"</span> &nbsp; <span style="color: #ff7700;font-weight:bold;">from</span> wxPython.<span style="color: black;">wx</span> <span style="color: #ff7700;font-weight:bold;">import</span> * <span style="color: #ff7700;font-weight:bold;">from</span> wxPython.<span style="color: black;">grid</span> <span style="color: #ff7700;font-weight:bold;">import</span> * <span style="color: #ff7700;font-weight:bold;">import</span> wx.<span style="color: black;">grid</span> <span style="color: #ff7700;font-weight:bold;">import</span> wx &nbsp; &nbsp; <span style="color: #ff7700;font-weight:bold;">class</span> MyFrame<span style="color: black;">&#40;</span>wx.<span style="color: black;">Frame</span><span style="color: black;">&#41;</span>: &nbsp; &nbsp; <span style="color: #ff7700;font-weight:bold;">def</span> <span style="color: #0000cd;">__init__</span><span style="color: black;">&#40;</span><span style="color: #008000;">self</span>, *args, **kwds<span style="color: black;">&#41;</span>: &nbsp; &nbsp; &nbsp; &nbsp; kwds<span style="color: black;">&#91;</span><span style="color: #483d8b;">"style"</span><span style="color: black;">&#93;</span> = wxDEFAULT_FRAME_STYLE &nbsp; &nbsp; &nbsp; &nbsp; wxFrame.<span style="color: #0000cd;">__init__</span><span style="color: black;">&#40;</span><span style="color: #008000;">self</span>, *args, **kwds<span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">SetSize</span><span style="color: black;">&#40;</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">550</span>, <span style="color: #ff4500;">400</span><span style="color: black;">&#41;</span><span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; font_1 = wx.<span style="color: black;">Font</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">10</span>, wx.<span style="color: black;">DEFAULT</span>, wx.<span style="color: black;">NORMAL</span>, wx.<span style="color: black;">BOLD</span><span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">window1</span> = wxSplitterWindow<span style="color: black;">&#40;</span><span style="color: #008000;">self</span>, -<span style="color: #ff4500;">1</span>, style=wxNO_BORDER<span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">panel1</span> = wxPanel<span style="color: black;">&#40;</span><span style="color: #008000;">self</span>.<span style="color: black;">window1</span>, -<span style="color: #ff4500;">1</span><span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">panel2</span> = wxPanel<span style="color: black;">&#40;</span><span style="color: #008000;">self</span>.<span style="color: black;">window1</span>, -<span style="color: #ff4500;">1</span><span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">exit</span> = wxButton<span style="color: black;">&#40;</span><span style="color: #008000;">self</span>.<span style="color: black;">panel2</span>, -<span style="color: #ff4500;">1</span>, <span style="color: #483d8b;">"Выход"</span><span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">exit</span>.<span style="color: black;">SetFont</span><span style="color: black;">&#40;</span>font_1<span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #808080; font-style: italic;">#создание грида</span> &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">grid</span> = wxGrid<span style="color: black;">&#40;</span><span style="color: #008000;">self</span>.<span style="color: black;">panel1</span>, -<span style="color: #ff4500;">1</span>, size=<span style="color: black;">&#40;</span><span style="color: #ff4500;">1</span>, <span style="color: #ff4500;">1</span><span style="color: black;">&#41;</span><span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">grid</span>.<span style="color: black;">CreateGrid</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">100</span>, <span style="color: #ff4500;">100</span><span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">grid</span>.<span style="color: black;">SetRowLabelSize</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">40</span><span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">grid</span>.<span style="color: black;">SetColLabelSize</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">40</span><span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">grid</span>.<span style="color: black;">SetMinSize</span><span style="color: black;">&#40;</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">500</span>,<span style="color: #ff4500;">300</span><span style="color: black;">&#41;</span><span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">grid</span>.<span style="color: black;">SetColLabelValue</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">0</span>, <span style="color: #483d8b;">"Столбец широкий"</span><span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">grid</span>.<span style="color: black;">SetColSize</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">0</span>,<span style="color: #ff4500;">200</span><span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">grid</span>.<span style="color: black;">SetColLabelValue</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">1</span>, <span style="color: #483d8b;">"Узкий"</span><span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">grid</span>.<span style="color: black;">SetColSize</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">1</span>,<span style="color: #ff4500;">50</span><span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; EVT_BUTTON<span style="color: black;">&#40;</span><span style="color: #008000;">self</span>, <span style="color: #008000;">self</span>.<span style="color: black;">exit</span>.<span style="color: black;">GetId</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>, <span style="color: #008000;">self</span>.<span style="color: black;">on_exit</span><span style="color: black;">&#41;</span> <span style="color: #808080; font-style: italic;"># выход</span> &nbsp; &nbsp; &nbsp; &nbsp; EVT_GRID_SELECT_CELL<span style="color: black;">&#40;</span><span style="color: #008000;">self</span>.<span style="color: black;">grid</span>, <span style="color: #008000;">self</span>.<span style="color: black;">on_select</span><span style="color: black;">&#41;</span> <span style="color: #808080; font-style: italic;">#событие на выбор ячейки</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">panel1</span>.<span style="color: black;">SetMinSize</span><span style="color: black;">&#40;</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">550</span>, <span style="color: #ff4500;">370</span><span style="color: black;">&#41;</span><span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">panel2</span>.<span style="color: black;">SetMinSize</span><span style="color: black;">&#40;</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">550</span>, <span style="color: #ff4500;">30</span><span style="color: black;">&#41;</span><span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">window1</span>.<span style="color: black;">SetMinSize</span><span style="color: black;">&#40;</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">550</span>, <span style="color: #ff4500;">400</span><span style="color: black;">&#41;</span><span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; sizer = wxBoxSizer<span style="color: black;">&#40;</span>wxVERTICAL<span style="color: black;">&#41;</span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; sizer_1 = wxBoxSizer<span style="color: black;">&#40;</span>wxVERTICAL<span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; sizer_2 = wxBoxSizer<span style="color: black;">&#40;</span>wxVERTICAL<span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; sizer_1.<span style="color: black;">Add</span><span style="color: black;">&#40;</span><span style="color: #008000;">self</span>.<span style="color: black;">grid</span>, -<span style="color: #ff4500;">1</span>, wx.<span style="color: black;">EXPAND</span>|wx.<span style="color: black;">ADJUST_MINSIZE</span>, <span style="color: #ff4500;">0</span><span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; sizer_2.<span style="color: black;">Add</span><span style="color: black;">&#40;</span><span style="color: #008000;">self</span>.<span style="color: black;">exit</span>, -<span style="color: #ff4500;">1</span>, wx.<span style="color: black;">EXPAND</span>|wx.<span style="color: black;">ADJUST_MINSIZE</span>, <span style="color: #ff4500;">0</span><span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">panel1</span>.<span style="color: black;">SetSizer</span><span style="color: black;">&#40;</span>sizer_1<span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">panel2</span>.<span style="color: black;">SetSizer</span><span style="color: black;">&#40;</span>sizer_2<span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">window1</span>.<span style="color: black;">SplitHorizontally</span><span style="color: black;">&#40;</span><span style="color: #008000;">self</span>.<span style="color: black;">panel1</span>, <span style="color: #008000;">self</span>.<span style="color: black;">panel2</span><span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; sizer.<span style="color: black;">Add</span><span style="color: black;">&#40;</span><span style="color: #008000;">self</span>.<span style="color: black;">window1</span>, <span style="color: #ff4500;">1</span>, wxALL|wxEXPAND, <span style="color: #ff4500;">0</span><span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">SetAutoLayout</span><span style="color: black;">&#40;</span><span style="color: #008000;">True</span><span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">SetSizer</span><span style="color: black;">&#40;</span>sizer<span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">Layout</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">Centre</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #ff7700;font-weight:bold;">def</span> on_exit<span style="color: black;">&#40;</span><span style="color: #008000;">self</span>, event<span style="color: black;">&#41;</span>: &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">Destroy</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; <span style="color: #ff7700;font-weight:bold;">def</span> on_select<span style="color: black;">&#40;</span><span style="color: #008000;">self</span>, event<span style="color: black;">&#41;</span>: &nbsp; &nbsp; &nbsp; &nbsp; tb = <span style="color: #008000;">self</span>.<span style="color: black;">grid</span>.<span style="color: black;">GetTable</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #ff7700;font-weight:bold;">if</span> tb.<span style="color: black;">GetNumberRows</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span> &gt; <span style="color: #ff4500;">0</span>: &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; r = <span style="color: #008000;">self</span>.<span style="color: black;">grid</span>.<span style="color: black;">GetGridCursorRow</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #ff7700;font-weight:bold;">print</span> <span style="color: #483d8b;">"Номер строки "</span>+<span style="color: #008000;">str</span><span style="color: black;">&#40;</span>r<span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; event.<span style="color: black;">Skip</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span> &nbsp; <span style="color: #ff7700;font-weight:bold;">class</span> MyApp<span style="color: black;">&#40;</span>wx.<span style="color: black;">App</span><span style="color: black;">&#41;</span>: &nbsp; &nbsp; <span style="color: #ff7700;font-weight:bold;">def</span> OnInit<span style="color: black;">&#40;</span><span style="color: #008000;">self</span><span style="color: black;">&#41;</span>: &nbsp; &nbsp; &nbsp; &nbsp; wxInitAllImageHandlers<span style="color: black;">&#40;</span><span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; frame = MyFrame<span style="color: black;">&#40;</span><span style="color: #008000;">None</span>, -<span style="color: #ff4500;">1</span>, <span style="color: #483d8b;">"Пример Грида"</span><span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #008000;">self</span>.<span style="color: black;">SetTopWindow</span><span style="color: black;">&#40;</span>frame<span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; frame.<span style="color: black;">Show</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span> &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #ff7700;font-weight:bold;">return</span> <span style="color: #ff4500;">1</span> <span style="color: #ff7700;font-weight:bold;">if</span> __name__ == <span style="color: #483d8b;">"__main__"</span>: &nbsp; &nbsp; app = MyApp<span style="color: black;">&#40;</span>redirect=<span style="color: #008000;">True</span><span style="color: black;">&#41;</span> &nbsp; &nbsp; app.<span style="color: black;">MainLoop</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span></pre></div></div></div> Thu, 11 Oct 2007 09:01:36 +0000 Общий :: GUI :: Опять о wxGrid, события! proDivahttp://www.python.com.ua/forum/viewtopic.php?pid=8528#p8528 8528@http://www.python.com.ua/forum <p>Опять работаю с гридом, пытаюсь вызвать событие wxEVT_GRID_SELECT_CELL и вернуть номер строки выбранной ячейки. Получается, что номер строки возвращается одновременно с событием выбора ячейки...... как результат, возвращается номер строки ячейки, выбранной в предыдущий раз, а не текущей.... Как бы эти действия сделать последовательными, а не одновременными?</p> Thu, 11 Oct 2007 08:53:59 +0000 Общий :: GUI :: Проверка клавиш через Xlib liksyshttp://www.python.com.ua/forum/viewtopic.php?pid=8313#p8313 8313@http://www.python.com.ua/forum <p>Здравствуйте. Есть большая программа на PyQt4, в ней используется QClipboard, который отслеживает содержимое клипбоарда не для одного приложения, а для всей системы (поиск по выделению, электронный словарь). Содержимое периодически меняется, при этом не отслеживается состояние с помощью стандартных сигналов, необходимо использовать вызовы Иксов. Подскажите пожалуйста (желательно киньте кодом :) ), как можно с помощью Xlib поверить, нажата ли клавиша мыши?</p> Mon, 01 Oct 2007 16:30:39 +0000 Общий :: GUI :: туториалы: pygtk на maemo j2ahttp://www.python.com.ua/forum/viewtopic.php?pid=8305#p8305 8305@http://www.python.com.ua/forum <p>Туториал по использованию pygtk на maemo (платформа nokia n770/800):<br /><a href="http://pymaemo.garage.maemo.org/documentation/pymaemo_tutorial/python_maemo_howto.html">http://pymaemo.garage.maemo.org/documen &hellip; howto.html</a><br /><br />PyGTK-приложения на Ubuntu Mobile Edition:<br /><a href="https://help.ubuntu.com/community/UMEGuide/ApplicationDevelopment/GladeWithPythonForUMEHildon">https://help.ubuntu.com/community/UMEGu &hellip; rUMEHildon</a><br /><a href="https://help.ubuntu.com/community/UMEGuide/ApplicationDevelopment/PortingAnAppToUME">https://help.ubuntu.com/community/UMEGu &hellip; AnAppToUME</a></p> Mon, 01 Oct 2007 04:41:36 +0000 Общий :: GUI :: wx.Bind обработка паралельных событий, Как это организовать finichttp://www.python.com.ua/forum/viewtopic.php?pid=8302#p8302 8302@http://www.python.com.ua/forum <blockquote><div class="incqbox"><h4>Jenyay написал:</h4><p>В wx есть класс Thread. Правда сам с ним не работал, но думаю, что он мало отличается от работы с потоками в других библиотеках.</p></div></blockquote><p>этот класс в wxPython кажется не включен, но работать можно с родными потоками Python.<br />у меня есть open source проектик - Remote File Browser, в нем реализован механизм работы с потоками, взять можно здесь <a href="http://finic.ucoz.ru">http://finic.ucoz.ru</a></p> Sun, 30 Sep 2007 18:38:50 +0000 Общий :: GUI :: рендеринг текста в python (OpenGL) Mixolaphttp://www.python.com.ua/forum/viewtopic.php?pid=8272#p8272 8272@http://www.python.com.ua/forum <p>Лан, все что надо написал уже на С++. Всетки косяк какой-то в pyqt с renderText...</p> Fri, 28 Sep 2007 11:06:45 +0000 Общий :: GUI :: рендеринг текста в python (OpenGL) Андрей Светловhttp://www.python.com.ua/forum/viewtopic.php?pid=8260#p8260 8260@http://www.python.com.ua/forum <p>Когда я говорил о минимальном примере - имел в виду тот, который можно запустить.<br />Честно, нелегко вспомнить о QT и наваять приложение на одно окно с ошибкой.<br />Даже если хорошо помню - все равно требует времени.<br />А еще я не могу понять контекст. glLoadIdentity грузит единичную матрицу либо в MODEL либо в PROJECTION<br />glMatrixMode(GL_PROJECTION)<br />self.sharedObjects возвращает стек матриц и gl states в первоначальное состояние или нет?<br />self - унаследован от QGLWidget или это что-то еще.<br />И так далее...</p> Thu, 27 Sep 2007 18:05:00 +0000 Общий :: GUI :: рендеринг текста в python (OpenGL) Mixolaphttp://www.python.com.ua/forum/viewtopic.php?pid=8259#p8259 8259@http://www.python.com.ua/forum <p>нужен плоский текст и кроссплатформенное решение. <br />пример с renderText:</p><div class="codebox"><div class="incqbox"><h4>Код::</h4><div class="scrollbox" style="height: 22.5em"><pre dir="ltr">def paintGL(self): self.qglClearColor(self.clearColor) glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT) glLoadIdentity() glTranslated(0.0, 0.0, -10.0) glRotated(self.xRot / 16.0, 1.0, 0.0, 0.0) glRotated(self.yRot / 16.0, 0.0, 1.0, 0.0) glRotated(self.zRot / 16.0, 0.0, 0.0, 1.0) glCallList(self.sharedObject) self.qglColor(QtGui.QColor(255,0,0)); self.renderText(0,0,0,'hello');</pre></div></div></div><p>в центр экрана выводит текст hello, но постоянно (при каждом вызове после первого) выдается ошибка о неправильных параметрах в&nbsp; &nbsp; glClear</p> Thu, 27 Sep 2007 17:30:19 +0000 Общий :: GUI :: рендеринг текста в python (OpenGL) Андрей Светловhttp://www.python.com.ua/forum/viewtopic.php?pid=8258#p8258 8258@http://www.python.com.ua/forum <p>А нужно рисовать плоский текст или крутить его в 3D?<br />Желаемая платформа? У винды есть свои специфичные подходы, у линуха - свои. Есть и кросплатформенные решения.<br />Какие фонты? TrueType, Adobe fonts или что-то еще (растровые, например).<br />Есть еще миллион вопросов.<br /><br />Кстати, вариантом было бы показать МАЛЕНЬКИЙ пример с renderText, который не работает. Я OpenGL под QT не пробовал, но можно попытаться разобраться.</p> Thu, 27 Sep 2007 17:21:17 +0000 Общий :: GUI :: рендеринг текста в python (OpenGL) Mixolaphttp://www.python.com.ua/forum/viewtopic.php?pid=8256#p8256 8256@http://www.python.com.ua/forum <p>Подскажите, как лучше рисовать текст. Пробовал renderText из PyQT4.3 - рендерит как надо, но постоянно выдает в консоль ошибку о неправельных параметрах при вызове последующих ОpenGL функций.</p> Thu, 27 Sep 2007 14:51:35 +0000 Общий :: GUI :: где найти внятное описание Tixa, в частности HList, Tree ? baluhttp://www.python.com.ua/forum/viewtopic.php?pid=8180#p8180 8180@http://www.python.com.ua/forum <p>1) отлично работает под - линукс (<a href="http://img468.imageshack.us/img468/6769/kaabh0.png">http://img468.imageshack.us/img468/6769/kaabh0.png</a> или <a href="http://b-al-u.livejournal.com/13181.html">http://b-al-u.livejournal.com/13181.html</a>) и виндовс . Скачай из репозитория (который bzr) у bialix<br />2) Ткинтер - это враппер для тикля. Тайл написан на тикле и войдет в следующую версию тикля. По ссылке - враппер для тайла.<br /><br />Я писал, как установить тайл для линукс. Если в репозитории описания нет, то я перешлю bialix, и, могу переслать по мылу тебе, вместе с самим тайлом.</p> Tue, 25 Sep 2007 09:34:12 +0000 Общий :: GUI :: где найти внятное описание Tixa, в частности HList, Tree ? umuphttp://www.python.com.ua/forum/viewtopic.php?pid=8140#p8140 8140@http://www.python.com.ua/forum <p>а где там описание этого Tile ? это самостоятельный GUI или тоже расширение TKinter ?<br />кроме того не вижу поддержки Linux (и др. систем), мне нужна кроссплатформенность.</p> Mon, 24 Sep 2007 10:53:12 +0000 Общий :: GUI :: где найти внятное описание Tixa, в частности HList, Tree ? baluhttp://www.python.com.ua/forum/viewtopic.php?pid=8133#p8133 8133@http://www.python.com.ua/forum <p>используй лучше Tile <a href="https://code.launchpad.net/~bialix/tile-win32/trunk">https://code.launchpad.net/~bialix/tile-win32/trunk</a></p> Mon, 24 Sep 2007 06:40:16 +0000