<?xml version="1.0" encoding="windows-1251"?>
<rss version="2.0">
<channel>
<title>Портал Python-программистов : Общий : GUI</title>
<link>http://www.python.su/forum</link>
<description> Портал Python-программистов</description>
<docs>http://backend.userland.com/rss</docs>
<item>
<title>Общий :: GUI :: wxPython. Вопрос по wx.DatePickerCtrl.</title>
<author>PooH</author><link>http://www.python.su/forum/viewtopic.php?pid=55281#p55281</link>
<guid isPermaLink="false">55281@http://www.python.su/forum</guid>
<description>&lt;p&gt;А в чем проблема?&lt;br /&gt;&lt;/p&gt;&lt;div class="codebox"&gt;&lt;div class="incqbox"&gt;&lt;h4&gt;Код:&lt;/h4&gt;&lt;div class="scrollbox" style="height: 9em"&gt;&lt;pre&gt;&lt;code&gt;from datetime import date

value = control.GetValue()
dt = date(value.GetYear(), value.GetMonth()+1, value.GetDay())&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;И работайте дальше с dt. Если вам только строковое представление даты надо, то у wxDateTime есть метод Format.&lt;br /&gt;&lt;/p&gt;&lt;div class="codebox"&gt;&lt;div class="incqbox"&gt;&lt;h4&gt;Код:&lt;/h4&gt;&lt;div class="scrollbox" style="height: 6em"&gt;&lt;pre&gt;&lt;code&gt;value = control.GetValue()
print value.Format('%Y-%m-%d')&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</description>
<pubDate>Mon, 06 Sep 2010 06:42:45 +0400</pubDate>
</item>
<item>
<title>Общий :: GUI :: [PyQt4] Выравнивание иконки в QTableWidget</title>
<author>apologize828</author><link>http://www.python.su/forum/viewtopic.php?pid=55276#p55276</link>
<guid isPermaLink="false">55276@http://www.python.su/forum</guid>
<description>&lt;blockquote&gt;&lt;div class="incqbox"&gt;&lt;h4&gt;aliens написал:&lt;/h4&gt;&lt;p&gt;такс, въехал, надо было свой viewOptions сделать, теперь пробелма, иконка выравнивается по центру но со смещением вверх или вниз, а если слева или справа то по середине строки (по вертикали)&lt;br /&gt;&lt;/p&gt;&lt;div class="codebox"&gt;&lt;div class="incqbox"&gt;&lt;h4&gt;Код:&lt;/h4&gt;&lt;div class="scrollbox" style="height: 7.5em"&gt;&lt;pre&gt;&lt;code&gt;        option = QtGui.QTableWidget.viewOptions(self)
        option.decorationAlignment = QtCore.Qt.AlignCenter | QtCore.Qt.AlignHCenter 
        option.decorationPosition = QtGui.QStyleOptionViewItem.Left&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;p&gt;как бы с выравниваем не знаю, но когда дело имел с Флагами, то там короче вроде была такая фишка:&lt;br /&gt;вот это - QtCore.Qt.AlignHCenter | QtCore.Qt.AlignCenter - будет не тоже самое что и - QtCore.Qt.AlignCenter | QtCore.Qt.AlignHCenter&lt;br /&gt;короче попробуй поменять местами, как в твоем примере&amp;nbsp; на C++)))&lt;/p&gt;</description>
<pubDate>Sun, 05 Sep 2010 19:20:57 +0400</pubDate>
</item>
<item>
<title>Общий :: GUI :: [PyQt4] Выравнивание иконки в QTableWidget</title>
<author>aliens</author><link>http://www.python.su/forum/viewtopic.php?pid=55274#p55274</link>
<guid isPermaLink="false">55274@http://www.python.su/forum</guid>
<description>&lt;p&gt;такс, въехал, надо было свой viewOptions сделать, теперь пробелма, иконка выравнивается по центру но со смещением вверх или вниз, а если слева или справа то по середине строки (по вертикали)&lt;br /&gt;&lt;/p&gt;&lt;div class="codebox"&gt;&lt;div class="incqbox"&gt;&lt;h4&gt;Код:&lt;/h4&gt;&lt;div class="scrollbox" style="height: 7.5em"&gt;&lt;pre&gt;&lt;code&gt;        option = QtGui.QTableWidget.viewOptions(self)
        option.decorationAlignment = QtCore.Qt.AlignCenter | QtCore.Qt.AlignHCenter 
        option.decorationPosition = QtGui.QStyleOptionViewItem.Left&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</description>
<pubDate>Sun, 05 Sep 2010 19:13:15 +0400</pubDate>
</item>
<item>
<title>Общий :: GUI :: [PyQt4] Выравнивание иконки в QTableWidget</title>
<author>aliens</author><link>http://www.python.su/forum/viewtopic.php?pid=55273#p55273</link>
<guid isPermaLink="false">55273@http://www.python.su/forum</guid>
<description>&lt;blockquote&gt;&lt;div class="incqbox"&gt;&lt;h4&gt;apologize828 написал:&lt;/h4&gt;&lt;p&gt;погляди че такое viewOptions()&lt;/p&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;p&gt;Да в том то и проблема, посмотрел, нашел откуда, но как установить его не понял :( &lt;br /&gt;через setStyle он не хочет&lt;/p&gt;</description>
<pubDate>Sun, 05 Sep 2010 18:42:19 +0400</pubDate>
</item>
<item>
<title>Общий :: GUI :: [PyQt4] Выравнивание иконки в QTableWidget</title>
<author>apologize828</author><link>http://www.python.su/forum/viewtopic.php?pid=55272#p55272</link>
<guid isPermaLink="false">55272@http://www.python.su/forum</guid>
<description>&lt;p&gt;погляди че такое viewOptions()&lt;/p&gt;</description>
<pubDate>Sun, 05 Sep 2010 18:40:15 +0400</pubDate>
</item>
<item>
<title>Общий :: GUI :: [PyQt4] Выравнивание иконки в QTableWidget</title>
<author>aliens</author><link>http://www.python.su/forum/viewtopic.php?pid=55271#p55271</link>
<guid isPermaLink="false">55271@http://www.python.su/forum</guid>
<description>&lt;p&gt;Хм, теперь не могу понять, а как применить options эти?&lt;/p&gt;</description>
<pubDate>Sun, 05 Sep 2010 18:08:26 +0400</pubDate>
</item>
<item>
<title>Общий :: GUI :: [PyQt4] Выравнивание иконки в QTableWidget</title>
<author>aliens</author><link>http://www.python.su/forum/viewtopic.php?pid=55269#p55269</link>
<guid isPermaLink="false">55269@http://www.python.su/forum</guid>
<description>&lt;blockquote&gt;&lt;div class="incqbox"&gt;&lt;h4&gt;apologize828 написал:&lt;/h4&gt;&lt;blockquote&gt;&lt;div class="incqbox"&gt;&lt;p&gt;Но я не понимаю, где взять Qt::AlignHCenter? Также, в оф доке достаточно много переменных именно в пространстве Qt::, где их взять в PyQt4?&lt;/p&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div class="codebox"&gt;&lt;div class="incqbox"&gt;&lt;h4&gt;Код:&lt;/h4&gt;&lt;div class="scrollbox" style="height: 6em"&gt;&lt;pre&gt;&lt;code&gt;from PyQt4 import QtCore
QtCore.Qt.AlignHCenter//попробуй так&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;p&gt;Спасибо! Вот оно где :)&lt;/p&gt;</description>
<pubDate>Sun, 05 Sep 2010 16:44:49 +0400</pubDate>
</item>
<item>
<title>Общий :: GUI :: [PyQt4] Выравнивание иконки в QTableWidget</title>
<author>apologize828</author><link>http://www.python.su/forum/viewtopic.php?pid=55262#p55262</link>
<guid isPermaLink="false">55262@http://www.python.su/forum</guid>
<description>&lt;blockquote&gt;&lt;div class="incqbox"&gt;&lt;p&gt;Но я не понимаю, где взять Qt::AlignHCenter? Также, в оф доке достаточно много переменных именно в пространстве Qt::, где их взять в PyQt4?&lt;/p&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div class="codebox"&gt;&lt;div class="incqbox"&gt;&lt;h4&gt;Код:&lt;/h4&gt;&lt;div class="scrollbox" style="height: 6em"&gt;&lt;pre&gt;&lt;code&gt;from PyQt4 import QtCore
QtCore.Qt.AlignHCenter//попробуй так&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;</description>
<pubDate>Sun, 05 Sep 2010 14:32:47 +0400</pubDate>
</item>
<item>
<title>Общий :: GUI :: tray icon в tkinter возможно?</title>
<author>Eliont</author><link>http://www.python.su/forum/viewtopic.php?pid=55261#p55261</link>
<guid isPermaLink="false">55261@http://www.python.su/forum</guid>
<description>&lt;p&gt;На любом междумордии (или вообще без него).&lt;br /&gt;Требует установленный PyWin.&lt;br /&gt;Проверено на Python 2.7.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="codebox"&gt;&lt;div class="incqbox"&gt;&lt;h4&gt;Код:&lt;/h4&gt;&lt;div class="scrollbox" style="height: 35em"&gt;&lt;pre&gt;&lt;code&gt;# Creates a task-bar icon.  Run from Python.exe to see the
# messages printed.
import win32api, win32con, win32gui

class Taskbar:
    def __init__(self):
        self.visible = 0
        message_map = {
            win32con.WM_DESTROY: self.onDestroy,
            win32con.WM_USER+20 : self.onTaskbarNotify,
        }
        # Register the Window class.
        wc = win32gui.WNDCLASS()
        hinst = wc.hInstance = win32api.GetModuleHandle(None)
        wc.lpszClassName = &amp;quot;PythonTaskbarDemo&amp;quot;
        wc.style = win32con.CS_VREDRAW | win32con.CS_HREDRAW;
        wc.hCursor = win32gui.LoadCursor( 0, win32con.IDC_ARROW )
        wc.hbrBackground = win32con.COLOR_WINDOW
        wc.lpfnWndProc = message_map # could also specify a wndproc.
        classAtom = win32gui.RegisterClass(wc)
        # Create the Window.
        style = win32con.WS_OVERLAPPED | win32con.WS_SYSMENU
        self.hwnd = win32gui.CreateWindow( classAtom, &amp;quot;Taskbar Demo&amp;quot;, style, \
                    0, 0, win32con.CW_USEDEFAULT, win32con.CW_USEDEFAULT, \
                    0, 0, hinst, None)
        win32gui.UpdateWindow(self.hwnd)

    def setIcon(self, hicon, tooltip=None):
        self.hicon = hicon
        self.tooltip = tooltip
        
    def show(self):
        &amp;quot;&amp;quot;&amp;quot;Display the taskbar icon&amp;quot;&amp;quot;&amp;quot;
        flags = win32gui.NIF_ICON | win32gui.NIF_MESSAGE
        if self.tooltip is not None:
            flags |= win32gui.NIF_TIP
            nid = (self.hwnd, 0, flags, win32con.WM_USER+20, self.hicon, self.tooltip)
        else:
            nid = (self.hwnd, 0, flags, win32con.WM_USER+20, self.hicon)
        if self.visible:
            self.hide()
        win32gui.Shell_NotifyIcon(win32gui.NIM_ADD, nid)
        self.visible = 1

    def hide(self):
        &amp;quot;&amp;quot;&amp;quot;Hide the taskbar icon&amp;quot;&amp;quot;&amp;quot;
        if self.visible:
            nid = (self.hwnd, 0)
            win32gui.Shell_NotifyIcon(win32gui.NIM_DELETE, nid)
        self.visible = 0
        
    def onDestroy(self, hwnd, msg, wparam, lparam):
        self.hide()
        win32gui.PostQuitMessage(0) # Terminate the app.

    def onTaskbarNotify(self, hwnd, msg, wparam, lparam):
        if lparam == win32con.WM_LBUTTONUP:
            self.onClick()
        elif lparam == win32con.WM_LBUTTONDBLCLK:
            self.onDoubleClick()
        return 1

    def onClick(self):
        &amp;quot;&amp;quot;&amp;quot;Override in subclassess&amp;quot;&amp;quot;&amp;quot;
        pass

    def onDoubleClick(self):
        &amp;quot;&amp;quot;&amp;quot;Override in subclassess&amp;quot;&amp;quot;&amp;quot;
        pass


if __name__=='__main__':
    class DemoTaskbar(Taskbar):

        def __init__(self):
            Taskbar.__init__(self)
            icon = win32gui.LoadIcon(0, win32con.IDI_APPLICATION)
            self.setIcon(icon)
            self.show()
            
        def onClick(self):
            print &amp;quot;you clicked&amp;quot;

        def onDoubleClick(self):
            print &amp;quot;you double clicked, bye!&amp;quot;
            win32gui.PostQuitMessage(0)
            
    t = DemoTaskbar()
    win32gui.PumpMessages() # start demo&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;Взято отсюда: &lt;a href="http://www.itamarst.org/software/"&gt;http://www.itamarst.org/software/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;UPD:&lt;br /&gt;Правда просто так - работает, а при попытке зацепить на клик какое-нибудь действие с т-кинтером - вешает программу. Если кто заинтересуется и разберётся - скажите пожалуйста.&lt;/p&gt;</description>
<pubDate>Sun, 05 Sep 2010 14:32:39 +0400</pubDate>
</item>
<item>
<title>Общий :: GUI :: [PyQt4] Выравнивание иконки в QTableWidget</title>
<author>aliens</author><link>http://www.python.su/forum/viewtopic.php?pid=55253#p55253</link>
<guid isPermaLink="false">55253@http://www.python.su/forum</guid>
<description>&lt;p&gt;Впринципе в основном вопрос по оф доке. Т.к. решение на С++&amp;nbsp; я нашел, такое:&lt;br /&gt;&lt;/p&gt;&lt;div class="codebox"&gt;&lt;div class="incqbox"&gt;&lt;h4&gt;Код:&lt;/h4&gt;&lt;div class="scrollbox" style="height: 15em"&gt;&lt;pre&gt;&lt;code&gt;QStyleOptionViewItem MyTableWidget::viewOptions() const
{
    QStyleOptionViewItem option = QTableWidget::viewOptions();
    option.decorationAlignment = Qt::AlignHCenter | Qt::AlignCenter;
    option.decorationPosition = QStyleOptionViewItem::Top;
    ...
    return option;
}&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;Но я не понимаю, где взять Qt::AlignHCenter? Также, в оф доке достаточно много переменных именно в пространстве Qt::, где их взять в PyQt4?&lt;br /&gt;&lt;br /&gt;Но если есть такой пример на Python, был бы благодарен :)&lt;/p&gt;</description>
<pubDate>Sun, 05 Sep 2010 12:44:52 +0400</pubDate>
</item>
<item>
<title>Общий :: GUI :: [Tkinter] Убрать крестик &amp;&amp; подавить подавить открытие окна терминала</title>
<author>Eliont</author><link>http://www.python.su/forum/viewtopic.php?pid=55249#p55249</link>
<guid isPermaLink="false">55249@http://www.python.su/forum</guid>
<description>&lt;p&gt;Спасибо за совет с pyw - то, что надо.&lt;br /&gt;А крестик можно убрать командой &lt;strong&gt;&lt;em&gt;root.overrideredirect(1)&lt;/em&gt;&lt;/strong&gt;.&lt;br /&gt;(совершенно случайно обнаружил, и тут же проверил - работает)&lt;/p&gt;</description>
<pubDate>Sun, 05 Sep 2010 08:23:00 +0400</pubDate>
</item>
<item>
<title>Общий :: GUI :: PyQT4 Закрытие дочерних окон</title>
<author>annndrey</author><link>http://www.python.su/forum/viewtopic.php?pid=55243#p55243</link>
<guid isPermaLink="false">55243@http://www.python.su/forum</guid>
<description>&lt;p&gt;Большое спасибо!&lt;br /&gt;Разобрался. В методе closeEvent главного окна закрываю все дочерние окна.&lt;br /&gt;&lt;br /&gt;Хотя, наверное, стоит потом попробовать переделать их в диалоги.&lt;br /&gt;Но т.к. их не очень много, наверное оставлю список дочерних окон, которые необходимо закрывать при закрытии главного.&lt;/p&gt;</description>
<pubDate>Sat, 04 Sep 2010 23:11:24 +0400</pubDate>
</item>
<item>
<title>Общий :: GUI :: PyQT4 Закрытие дочерних окон</title>
<author>Zubchick</author><link>http://www.python.su/forum/viewtopic.php?pid=55229#p55229</link>
<guid isPermaLink="false">55229@http://www.python.su/forum</guid>
<description>&lt;p&gt;у любого виджета есть родитель, достаточно его указать чтобы при закрытии родителя остальные тоже закрывались.&lt;br /&gt;&lt;br /&gt;вот посмотри примеры метод showAboutWindow &lt;a href="http://bitbucket.org/zubchick/madmodeller/src/tip/forms/MainForm.py#cl-243"&gt;http://bitbucket.org/zubchick/madmodell &amp;hellip; .py#cl-243&lt;/a&gt; , &lt;a href="http://bitbucket.org/zubchick/madmodeller/src/tip/forms/about.py."&gt;http://bitbucket.org/zubchick/madmodell &amp;hellip; /about.py.&lt;/a&gt; Это были мои первые пробы пера, так что посмотри тока на идею)&lt;/p&gt;</description>
<pubDate>Sat, 04 Sep 2010 15:15:09 +0400</pubDate>
</item>
<item>
<title>Общий :: GUI :: PyQT4 Закрытие дочерних окон</title>
<author>pasaranax</author><link>http://www.python.su/forum/viewtopic.php?pid=55228#p55228</link>
<guid isPermaLink="false">55228@http://www.python.su/forum</guid>
<description>&lt;p&gt;Ты, наверное, создаешь дочерние окна, как обычные виджеты без указания родителя?&lt;br /&gt;Есть несколько путей:&lt;br /&gt;1. Как сказал &lt;strong&gt;dartNNN&lt;/strong&gt;, вести список окон и у родителя в closeEvent прописать их закрытие&lt;br /&gt;2. Делать дочерние окна модальными (метод setModal()), чтобы они блокировали приложение, пока их вручную не закроешь&lt;br /&gt;3. Использовать вместо QWidget QDialog и прописывать им родителя, тогда при закрытии родителя диалоги будут тоже закрываться. Предпочтительный метод, имхо.&lt;/p&gt;</description>
<pubDate>Sat, 04 Sep 2010 13:34:25 +0400</pubDate>
</item>
<item>
<title>Общий :: GUI :: PyQT4 Закрытие дочерних окон</title>
<author>dartNNN</author><link>http://www.python.su/forum/viewtopic.php?pid=55227#p55227</link>
<guid isPermaLink="false">55227@http://www.python.su/forum</guid>
<description>&lt;p&gt;Можно сделать на основе mdi примера (там дочерние окна внутри основного, и делается все это через QMdiArea) если конечно подойдет. А если нет, то надо в этом примере mdiArea заменить, например, на простой список и самому написать функцию closeAllSubWindow(), где пробегать по списку и закрывать все окна (метод close()).&lt;br /&gt;Вот как-то так.&lt;/p&gt;</description>
<pubDate>Sat, 04 Sep 2010 13:27:57 +0400</pubDate>
</item>
</channel></rss>