当前位置: 首页>>代码示例>>Python>>正文


Python Window.set_position方法代码示例

本文整理汇总了Python中window.Window.set_position方法的典型用法代码示例。如果您正苦于以下问题:Python Window.set_position方法的具体用法?Python Window.set_position怎么用?Python Window.set_position使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在window.Window的用法示例。


在下文中一共展示了Window.set_position方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: UserManual

# 需要导入模块: from window import Window [as 别名]
# 或者: from window.Window import set_position [as 别名]
class UserManual(dbus.service.Object):
    def __init__(self, session_bus):
        dbus.service.Object.__init__(self, session_bus, DEEPIN_USER_MANUAL_PATH)

        self.window = Window()
        self._init_values()
        self._init_settings()
        self._init_wedget()
        
        self.window.connect("destroy", gtk.main_quit)
        self.window.set_position(gtk.WIN_POS_CENTER)
        self.window.show_all()
        gtk.main()

    def _init_values(self):
        self.width = 685
        self.height = 500
        self.titlebar_height = 62
        self.book_name_label_color = "#6fb8ef"
        self.html_base_url = "file://" + os.path.join(CONTENTS_PATH, "html") + "/"
        self.home_html_str = open(os.path.join(CONTENTS_PATH, "html", "home.html")).read()
        self.index_html_str = open(os.path.join(CONTENTS_PATH, "html", "index.html")).read()
        self.home_values = get_home_item_values()
        self.init_progress_data()

    def _init_settings(self):
        self.window.set_decorated(False)
        self.window.set_icon_from_file(os.path.join(APP_IMAGE_PATH, "deepin-user-manual.png"))
        self.window.set_title(_("LinuxDeepin User Manual"))

    def _init_wedget(self):
        main_v_box = gtk.VBox()

        self.title_align = gtk.Alignment(0, 0.5, 1, 1)
        self.title_align.set_padding(0, 0, 0, 0)
        self.title_align.add(home_title_bar)
        
        self.web_view = ContentWebView(self.width, self.height - self.titlebar_height)
        #self.web_view.enable_inspector()
        self.web_view.connect("load-committed", self.load_committed_cb)
        self.web_view.connect("load-finished", self.load_finished_cb)

        # init velues for home
        self.push_data_to_web_view(self.home_html_str, self.home_values_to_list())

        main_v_box.pack_start(self.title_align)
        main_v_box.pack_start(self.web_view)
        
        self.main_alignment = gtk.Alignment(0.5, 0.5, 0, 0)
        self.main_alignment.set_padding(0, 0, 0, 0)
        self.main_alignment.add(main_v_box)
        self.window.add_widget(self.main_alignment)
        
        back.connect("button-release-event", self.page_go_back)
        home_title_bar.min_button.connect("clicked", lambda w: self.window.iconify())
        index_title_bar.min_button.connect("clicked", lambda w: self.window.iconify())
        home_title_bar.close_button.connect("clicked", self.close_window)
        index_title_bar.close_button.connect("clicked", self.close_window)
        self.window.add_move_event(home_title_bar)
        self.window.add_move_event(index_title_bar)
        self.web_view.connect("title-changed", self.title_changed_handler)

    def close_window(self, widget):
        write_unread_pages_data(self.home_values)
        gtk.main_quit()
        
    def title_changed_handler(self, widget, webframe, data):
        data_dict = eval(data)

        if data_dict["type"]=="external_link":
            webbrowser.open(data_dict["data"])

        elif data_dict["type"]=="home_item_link":
            book = data_dict["data"]
            self.home_item_click_handler(book)

        elif data_dict["type"] == "after_slider_change":
            page_info = eval(data_dict["data"])
            book, chapter_index, page_id = page_info["book"], page_info["chapter_index"], page_info["page_id"]
            self.remove_read_page(book, chapter_index, page_id)
            if chapter_index == 0 and self.home_values[book]["all_pages"][chapter_index][0] == page_id:
                self.web_view.execute_script('change_nav_status("Left", "none")')
                self.web_view.execute_script('change_nav_status("Right", "block")')
                self.web_view.execute_script('$("#msg").css("display", "none")')
            elif chapter_index == len(self.home_values[book]["all_pages"])-1 and page_id == self.home_values[book]["all_pages"][chapter_index][-1]:
                self.web_view.execute_script('change_nav_status("Left", "block")')
            else:
                self.web_view.execute_script('change_nav_status("Left", "block")')
                self.web_view.execute_script('change_nav_status("Right", "block")')
                self.web_view.execute_script('$("#msg").css("display", "none")')
                
        elif data_dict["type"] == "before_slider_change":
            page_info = eval(data_dict["data"])
            book, chapter_index, page_id = page_info["book"], page_info["chapter_index"], page_info["page_id"]
            self.remove_read_page(book, chapter_index, page_id)
            self.web_view.execute_script("var all_pages=%s" % json.dumps(self.home_values[book]["all_pages"], encoding="UTF-8", ensure_ascii=False))
            if chapter_index == len(self.home_values[book]["all_pages"])-1 and page_id == self.home_values[book]["all_pages"][chapter_index][-1]:
                self.web_view.execute_script('document.getElementById("return").innerHTML = %s' % json.dumps(_("Read Again"), encoding="UTF-8", ensure_ascii=False))
                self.web_view.execute_script('document.getElementById("next").innerHTML = %s' % json.dumps(_("Next Chapter"), encoding="UTF-8", ensure_ascii=False))
                self.web_view.execute_script('$("#msg").css("display", "block")')
#.........这里部分代码省略.........
开发者ID:electricface,项目名称:deepin-user-manual,代码行数:103,代码来源:main.py


注:本文中的window.Window.set_position方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。