python类askyesno()的实例源码

EditorWindow.py 文件源码 项目:zippy 作者: securesystemslab 项目源码 文件源码 阅读 21 收藏 0 点赞 0 评论 0
def toggle_tabs_event(self, event):
        if self.askyesno(
              "Toggle tabs",
              "Turn tabs " + ("on", "off")[self.usetabs] +
              "?\nIndent width " +
              ("will be", "remains at")[self.usetabs] + " 8." +
              "\n Note: a tab is always 8 columns",
              parent=self.text):
            self.usetabs = not self.usetabs
            # Try to prevent inconsistent indentation.
            # User must change indent width manually after using tabs.
            self.indentwidth = 8
        return "break"

    # XXX this isn't bound to anything -- see tabwidth comments
##     def change_tabwidth_event(self, event):
##         new = self._asktabwidth()
##         if new != self.tabwidth:
##             self.tabwidth = new
##             self.set_indentation_params(0, guess=0)
##         return "break"
Chapter6-3-abridged.py 文件源码 项目:Tkinter-By-Example 作者: Dvlv 项目源码 文件源码 阅读 21 收藏 0 点赞 0 评论 0
def next_match(self, event=None):
        try:
            current_target, current_target_end = self.match_coordinates[self.current_match]
            self.main_text.tag_remove("sel", current_target, current_target_end)
            self.main_text.tag_add("findmatch", current_target, current_target_end)
        except IndexError:
            pass

        try:
            self.current_match = self.current_match + 1
            next_target, target_end = self.match_coordinates[self.current_match]
        except IndexError:
            if len(self.match_coordinates) == 0:
                msg.showinfo("No Matches", "No Matches Found")
            else:
                if msg.askyesno("Wrap Search?", "Reached end of file. Continue from the top?"):
                    self.current_match = -1
                    self.next_match()
        else:
            self.main_text.mark_set(tk.INSERT, next_target)
            self.main_text.tag_remove("findmatch", next_target, target_end)
            self.main_text.tag_add("sel", next_target, target_end)
            self.main_text.see(next_target)
Chapter6-3.py 文件源码 项目:Tkinter-By-Example 作者: Dvlv 项目源码 文件源码 阅读 19 收藏 0 点赞 0 评论 0
def next_match(self, event=None):
        try:
            current_target, current_target_end = self.match_coordinates[self.current_match]
            self.main_text.tag_remove("sel", current_target, current_target_end)
            self.main_text.tag_add("findmatch", current_target, current_target_end)
        except IndexError:
            pass

        try:
            self.current_match = self.current_match + 1
            next_target, target_end = self.match_coordinates[self.current_match]
        except IndexError:
            if len(self.match_coordinates) == 0:
                msg.showinfo("No Matches", "No Matches Found")
            else:
                if msg.askyesno("Wrap Search?", "Reached end of file. Continue from the top?"):
                    self.current_match = -1
                    self.next_match()
        else:
            self.main_text.mark_set(tk.INSERT, next_target)
            self.main_text.tag_remove("findmatch", next_target, target_end)
            self.main_text.tag_add("sel", next_target, target_end)
            self.main_text.see(next_target)
fbi_theme_preview_v1.py 文件源码 项目:FBIThemePreviewer 作者: jurassicplayer 项目源码 文件源码 阅读 20 收藏 0 点赞 0 评论 0
def saveConfig(self, config_type):
        print("Saving config: {}".format(config_type))
        if config_type == "config":
            filepath = "config"
            config_dict = self.app_config
            ordered = ['theme_folder', 'theme_title', 'theme_desc', 'theme_author', 'theme_version', 'meta_icon', 'screen_gap', 'anim_duration', 'overwrite', 'language']
        elif config_type == "textcolor":
            theme_folder = self.app_config['theme_folder']
            os.makedirs(theme_folder, exist_ok=True)
            filepath = os.path.join(theme_folder,'textcolor.cfg')
            config_dict={}
            for key in self.text_config:
                value = "{}{}".format(self.text_config[key]['alpha'], swapRGBBGR(self.text_config[key]['rgb'])[1:])
                config_dict.update({key: value})
            ordered = ['text', 'nand', 'sd', 'gamecard', 'dstitle', 'file', 'directory', 'enabled', 'disabled', 'installed', 'notinstalled', 'ticketinuse', 'ticketnotinuse']
            if os.path.isfile(filepath) and not self.app_config['overwrite'] in ['always', 'textcolor']:
                if not messagebox.askyesno("Warning", "A textcolor.cfg already exists, do you want to overwrite?", icon='warning'):
                    return
        with open(filepath, 'w') as f:
            for key in ordered:
                f.write("{}={}\n".format(key, config_dict[key]))
            f.truncate(f.tell() - len(os.linesep))
fbi_theme_preview_v1.py 文件源码 项目:FBIThemePreviewer 作者: jurassicplayer 项目源码 文件源码 阅读 18 收藏 0 点赞 0 评论 0
def savePreview(self):
        print("Generating preview image...")
        x1 = self.winfo_rootx()+self.canvas.winfo_x()
        y1 = self.winfo_rooty()+self.canvas.winfo_y()
        x2 = x1+self.canvas.winfo_width()
        y2 = y1+self.canvas.winfo_height()
        coords = [x1, y1, x2, y2]
        if os.path.isfile("preview.png") and not self.app_config['overwrite'] in ['always', 'preview']:
            if not messagebox.askyesno("Warning", "Preview image already exists, do you want to overwrite?", icon='warning'):
                return
        self.attributes("-topmost", 1)
        self.attributes("-topmost", 0)
        self.canvas.delete('toolbar')
        self.canvas.update_idletasks()
        ImageGrab.grab().crop((x1,y1,x2,y2)).save("preview.png")
        self.updateCanvas()
fbi_theme_preview.py 文件源码 项目:FBIThemePreviewer 作者: jurassicplayer 项目源码 文件源码 阅读 39 收藏 0 点赞 0 评论 0
def saveConfig(self, config_type):
        print("Saving config: {}".format(config_type))
        if config_type == "config":
            filepath = "config"
            config_dict = self.app_config
            ordered = ['theme_folder', 'theme_title', 'theme_desc', 'theme_author', 'theme_version', 'meta_icon', 'screen_gap', 'anim_duration', 'overwrite', 'language']
        elif config_type == "textcolor":
            theme_folder = self.app_config['theme_folder']
            os.makedirs(theme_folder, exist_ok=True)
            filepath = os.path.join(theme_folder,'textcolor.cfg')
            config_dict={}
            for key in self.text_config:
                r,g,b,a = self.text_config[key]
                value = "{:02x}{:02x}{:02x}{:02x}".format(a,b,g,r).upper()
                config_dict.update({key: value})
            ordered = ['text', 'nand', 'sd', 'gamecard', 'dstitle', 'file', 'directory', 'enabled', 'disabled', 'installed', 'notinstalled', 'ticketinuse', 'ticketnotinuse']
            if os.path.isfile(filepath) and not self.app_config['overwrite'] in ['always', 'textcolor']:
                if not messagebox.askyesno("Warning", "A textcolor.cfg already exists, do you want to overwrite?", icon='warning'):
                    return
        with open(filepath, 'w') as f:
            for key in ordered:
                f.write("{}={}\n".format(key, config_dict[key]))
            f.truncate(f.tell() - len(os.linesep))
fbi_theme_preview.py 文件源码 项目:FBIThemePreviewer 作者: jurassicplayer 项目源码 文件源码 阅读 27 收藏 0 点赞 0 评论 0
def savePreview(self):
        print("Generating preview image...")
        x1 = self.winfo_rootx()+self.canvas.winfo_x()
        y1 = self.winfo_rooty()+self.canvas.winfo_y()
        x2 = x1+self.canvas.winfo_width()
        y2 = y1+self.canvas.winfo_height()
        coords = [x1, y1, x2, y2]
        if os.path.isfile("preview.png") and not self.app_config['overwrite'] in ['always', 'preview']:
            if not messagebox.askyesno("Warning", "Preview image already exists, do you want to overwrite?", icon='warning'):
                return
        self.attributes("-topmost", 1)
        self.attributes("-topmost", 0)
        self.canvas.delete('toolbar')
        self.canvas.update_idletasks()
        ImageGrab.grab().crop((x1,y1,x2,y2)).save("preview.png")
        #self.v['canvas_image'].save("preview.png")
        self.updateCanvas()
main.py 文件源码 项目:jjal_downloader 作者: tucuprum 项目源码 文件源码 阅读 17 收藏 0 点赞 0 评论 0
def DeleteItem(): # ??? ??? ??
    rawSelectedItems = tree.selection()
    pageIndexList = tree.get_children()
    [tree.selection_add(tree.get_children(r)) for r in rawSelectedItems if r in pageIndexList]
    [tree.selection_add(tree.parent(r)) for r in rawSelectedItems if r not in pageIndexList and tree.next(r) == '' and tree.prev(r) == '']
    selectedItems = tree.selection()
    numberOfSelection = len(selectedItems)
    if numberOfSelection == 0:
        return 0

    displayMessage = '? ' + str(len(selectedItems)) + ' ? ??? ?????????'
    if messagebox.askyesno('?? ??', displayMessage):
        for s in selectedItems:
            if not tree.exists(s):
                continue
            elif tree.parent(s) == '':
                tree.delete(s)
            elif tree.parent(s) in selectedItems:
                continue
            else:
                itspage = tree.parent(s)
                origVal = tree.set(itspage)
                tree.item(itspage, value=[origVal['#1'], origVal['#2'], int(origVal['#3'])-1, origVal['#4']])
                tree.delete(s)
        root.lift()
test_tkinter.py 文件源码 项目:Mac-Python-3.X 作者: L1nwatch 项目源码 文件源码 阅读 16 收藏 0 点赞 0 评论 0
def main():
    # ?????????,?????Tkinter????????Tk??.??????withdraw()??????
    tk = tkinter.Tk()
    tk.withdraw()  # ?????

    print(dir(mb))

    # ??,?????????,??ok,????????????.??????????????,??????????.
    # ??,???Cancel?,??????None
    mb.showinfo("Title", "Your message here")
    mb.showerror("An Error", "Oops!")
    mb.showwarning("Title", "This may not work...")
    mb.askyesno("Title", "Do you love me?")
    mb.askokcancel("Title", "Are you well?")
    mb.askquestion("Title", "How are you?")
    mb.askretrycancel("Title", "Go again?")
    mb.askyesnocancel("Title", "Are you well?")
EditorWindow.py 文件源码 项目:ouroboros 作者: pybee 项目源码 文件源码 阅读 24 收藏 0 点赞 0 评论 0
def toggle_tabs_event(self, event):
        if self.askyesno(
              "Toggle tabs",
              "Turn tabs " + ("on", "off")[self.usetabs] +
              "?\nIndent width " +
              ("will be", "remains at")[self.usetabs] + " 8." +
              "\n Note: a tab is always 8 columns",
              parent=self.text):
            self.usetabs = not self.usetabs
            # Try to prevent inconsistent indentation.
            # User must change indent width manually after using tabs.
            self.indentwidth = 8
        return "break"

    # XXX this isn't bound to anything -- see tabwidth comments
##     def change_tabwidth_event(self, event):
##         new = self._asktabwidth()
##         if new != self.tabwidth:
##             self.tabwidth = new
##             self.set_indentation_params(0, guess=0)
##         return "break"
settings.py 文件源码 项目:porcupine 作者: Akuli 项目源码 文件源码 阅读 25 收藏 0 点赞 0 评论 0
def _do_reset():
    if not _needs_reset:
        messagebox.showinfo("Reset Settings",
                            "You are already using the default settings.")
        return

    if not messagebox.askyesno(
            "Reset Settings", "Are you sure you want to reset all settings?",
            parent=_dialog):
        return

    for section in _sections.values():
        for key, info in section._infos.items():
            if info.reset:
                section[key] = info.default
    messagebox.showinfo(
        "Reset Settings", "All settings were reset to defaults.",
        parent=_dialog)
EditorWindow.py 文件源码 项目:kbe_server 作者: xiaohaoppy 项目源码 文件源码 阅读 20 收藏 0 点赞 0 评论 0
def toggle_tabs_event(self, event):
        if self.askyesno(
              "Toggle tabs",
              "Turn tabs " + ("on", "off")[self.usetabs] +
              "?\nIndent width " +
              ("will be", "remains at")[self.usetabs] + " 8." +
              "\n Note: a tab is always 8 columns",
              parent=self.text):
            self.usetabs = not self.usetabs
            # Try to prevent inconsistent indentation.
            # User must change indent width manually after using tabs.
            self.indentwidth = 8
        return "break"

    # XXX this isn't bound to anything -- see tabwidth comments
##     def change_tabwidth_event(self, event):
##         new = self._asktabwidth()
##         if new != self.tabwidth:
##             self.tabwidth = new
##             self.set_indentation_params(0, guess=0)
##         return "break"
appjar.py 文件源码 项目:SceneDensity 作者: ImOmid 项目源码 文件源码 阅读 23 收藏 0 点赞 0 评论 0
def yesNoBox(self, title, message):
        self.topLevel.update_idletasks()
        return MessageBox.askyesno(title, message)
tkdialog.py 文件源码 项目:sc8pr 作者: dmaccarthy 项目源码 文件源码 阅读 19 收藏 0 点赞 0 评论 0
def __init__(self, response=str, text="", title=None, accept=0, **options):
        if response is bool:
            self.dialog = [askyesno, askokcancel, askretrycancel][accept]
        else: self.dialog = {None:showinfo, str:askstring, int:askinteger, float:askfloat,
            0:askopenfilename, 1:asksaveasfilename, 2:askdirectory}[response]
        self.options = options.copy()
        if "initialdir" in options:
            self.options["initialdir"] = abspath(options["initialdir"])
        if type(response) is int:
            self.args = tuple()
            if title: self.options["title"] = title
        else:
            if title is None:
                title = "Info" if response is None else "Confirm" if response is bool else "Input"
            self.args = title, text
recipe-577527.py 文件源码 项目:code 作者: ActiveState 项目源码 文件源码 阅读 23 收藏 0 点赞 0 评论 0
def cancel(self, event=None, force=False):
        title = 'Warning'
        message = 'Are you sure you want\nto stop taking this test?'
        if force or messagebox.askyesno(title, message, master=self):
            if self.parent is not None:
                self.parent.focus_set()
            self.destroy()

################################################################################
appjar.py 文件源码 项目:Cryptokey_Generator 作者: 8BitCookie 项目源码 文件源码 阅读 19 收藏 0 点赞 0 评论 0
def yesNoBox(self, title, message):
        self.topLevel.update_idletasks()
        return MessageBox.askyesno(title, message)
main.py 文件源码 项目:ine5430-gomoku 作者: igoryamamoto 项目源码 文件源码 阅读 18 收藏 0 点赞 0 评论 0
def isHuman(self, number):
        '''
            Function to choose wether the player is human or not.
        '''
        msg = 'Is Player {} a human?'.format(number)
        return messagebox.askyesno('Human or PC', msg)


    #|22th.|
main.py 文件源码 项目:ine5430-gomoku 作者: igoryamamoto 项目源码 文件源码 阅读 20 收藏 0 点赞 0 评论 0
def playAgain(self, number):
        msg = 'Player {} is the winner! \nDo you want to play again?'.format(number)
        return messagebox.askyesno('Play again', msg)


    #|20th.|
GfxCtx.py 文件源码 项目:PyLabyrinthe 作者: yoann-darche 项目源码 文件源码 阅读 21 收藏 0 点赞 0 评论 0
def quitter(self, event=None):
        """
        Fonction appelé pour finir le programme, une confirmation est demandée avant
        """

        reponse = askyesno("Quitter le programme ?",
        "Voulez-vous réellement terminer ? \n cliquer <<oui>> pour finir")

        if reponse:
            self.fenetre.destroy()
monsters.py 文件源码 项目:DnD 作者: the-nick-of-time 项目源码 文件源码 阅读 16 收藏 0 点赞 0 评论 0
def load_file(self):
        base = iface.JSONInterface.OBJECTSPATH
        # filename = 'monster/' + h.clean(self.filequery.get().casefold()) + '.monster'
        filename = self.filename
        # if (os.path.isfile(base + filename)):
        if (os.path.isfile(filename)):
            interface = iface.JSONInterface(filename, isabsolute=True)
            self.data.update(interface.get('/'))
            # self.data.update({'average': self.av.get()})
            av = messagebox.askyesno(message='Take average HP?')
            self.data.update({'average': av})
            self.finish(fromfile=True)
        else:
            gui.ErrorMessage('That file does not exist. Check your spelling.')
spgl.py 文件源码 项目:SPGL 作者: wynand1004 项目源码 文件源码 阅读 24 收藏 0 点赞 0 评论 0
def ask_yes_no(self, title, message):
        return messagebox.askyesno(title, message)
spgl.py 文件源码 项目:SPGL 作者: wynand1004 项目源码 文件源码 阅读 20 收藏 0 点赞 0 评论 0
def ask_yes_no(self, title, message):
        return messagebox.askyesno(title, message)
rollingshutter.py 文件源码 项目:rollingshutterpy 作者: alexd3rsan 项目源码 文件源码 阅读 21 收藏 0 点赞 0 评论 0
def start(self) -> None:
        rs = self.rolling_shutter = RollingShutter(self.files,
                                                   self.tk_speed_val.get(),
                                                   self.file_output)

        lines_covered = rs.frame_count * self.tk_speed_val.get()

        if lines_covered < rs.height:
            m = ('The number of iterations ({}) is lower than the height'
                 ' of the resulting image ({}px).\n\nMissing spots ({} lines)'
                 ' will be filled with black.\n\n'
                 'Do you want to continue?')
            message = m.format(lines_covered,
                               rs.height,
                               rs.height-lines_covered)
            choice = askyesno('Proceed?', message)

            if not choice:
                return None

        self.disable_buttons()
        self.progress_bar.config(maximum=lines_covered)
        self.progress_bar.state(['!disabled'])

        t1 = Thread(target=rs.thread, args=(self,))
        t1.setDaemon(True)
        t1.start()
configDialog.py 文件源码 项目:zippy 作者: securesystemslab 项目源码 文件源码 阅读 19 收藏 0 点赞 0 评论 0
def DeleteCustomKeys(self):
        keySetName=self.customKeys.get()
        if not tkMessageBox.askyesno('Delete Key Set','Are you sure you wish '+
                                     'to delete the key set %r ?' % (keySetName),
                                     parent=self):
            return
        #remove key set from config
        idleConf.userCfg['keys'].remove_section(keySetName)
        if keySetName in self.changedItems['keys']:
            del(self.changedItems['keys'][keySetName])
        #write changes
        idleConf.userCfg['keys'].Save()
        #reload user key set list
        itemList=idleConf.GetSectionList('user','keys')
        itemList.sort()
        if not itemList:
            self.radioKeysCustom.config(state=DISABLED)
            self.optMenuKeysCustom.SetMenu(itemList,'- no custom keys -')
        else:
            self.optMenuKeysCustom.SetMenu(itemList,itemList[0])
        #revert to default key set
        self.keysAreBuiltin.set(idleConf.defaultCfg['main'].Get('Keys','default'))
        self.builtinKeys.set(idleConf.defaultCfg['main'].Get('Keys','name'))
        #user can't back out of these changes, they must be applied now
        self.Apply()
        self.SetKeysType()
configDialog.py 文件源码 项目:zippy 作者: securesystemslab 项目源码 文件源码 阅读 22 收藏 0 点赞 0 评论 0
def DeleteCustomTheme(self):
        themeName=self.customTheme.get()
        if not tkMessageBox.askyesno('Delete Theme','Are you sure you wish '+
                                     'to delete the theme %r ?' % (themeName,),
                                     parent=self):
            return
        #remove theme from config
        idleConf.userCfg['highlight'].remove_section(themeName)
        if themeName in self.changedItems['highlight']:
            del(self.changedItems['highlight'][themeName])
        #write changes
        idleConf.userCfg['highlight'].Save()
        #reload user theme list
        itemList=idleConf.GetSectionList('user','highlight')
        itemList.sort()
        if not itemList:
            self.radioThemeCustom.config(state=DISABLED)
            self.optMenuThemeCustom.SetMenu(itemList,'- no custom themes -')
        else:
            self.optMenuThemeCustom.SetMenu(itemList,itemList[0])
        #revert to default theme
        self.themeIsBuiltin.set(idleConf.defaultCfg['main'].Get('Theme','default'))
        self.builtinTheme.set(idleConf.defaultCfg['main'].Get('Theme','name'))
        #user can't back out of these changes, they must be applied now
        self.Apply()
        self.SetThemeType()
gui.py 文件源码 项目:StochOPy 作者: keurfonluu 项目源码 文件源码 阅读 20 收藏 0 点赞 0 评论 0
def close_window(self):
        yes = tkmessage.askyesno("Exit", "Do you really want to quit?")
        if yes:
            self.close()
Chapter2-2.py 文件源码 项目:Tkinter-By-Example 作者: Dvlv 项目源码 文件源码 阅读 22 收藏 0 点赞 0 评论 0
def remove_task(self, event):
        task = event.widget
        if msg.askyesno("Really Delete?", "Delete " + task.cget("text") + "?"):
            self.tasks.remove(event.widget)
            event.widget.destroy()
            self.recolour_tasks()
Chapter2-3-abridged.py 文件源码 项目:Tkinter-By-Example 作者: Dvlv 项目源码 文件源码 阅读 26 收藏 0 点赞 0 评论 0
def remove_task(self, event):
        task = event.widget
        if msg.askyesno("Really Delete?", "Delete " + task.cget("text") + "?"):
            self.tasks.remove(event.widget)

            delete_task_query = "DELETE FROM tasks WHERE task=?"
            delete_task_data = (task.cget("text"),)
            self.runQuery(delete_task_query, delete_task_data)

            event.widget.destroy()

            self.recolour_tasks()
Chapter7-3.py 文件源码 项目:Tkinter-By-Example 作者: Dvlv 项目源码 文件源码 阅读 19 收藏 0 点赞 0 评论 0
def confirm_delete(self, event=None):
        current_tab = self.notebook.tab(self.notebook.select(), "text")
        tree = self.tab_trees[current_tab]
        selected_item_id = tree.selection()
        selected_item = tree.item(selected_item_id)

        if msg.askyesno("Delete Item?", "Delete " + selected_item["values"][0] + "?", parent=self):
            task_name = selected_item["values"][0]
            task_time = selected_item["values"][2]
            task_date = " ".join([current_tab, task_time])
            self.master.delete_task(task_name, task_date)
            tree.delete(selected_item_id)
tkview.py 文件源码 项目:chronophore 作者: mesbahamin 项目源码 文件源码 阅读 21 收藏 0 点赞 0 评论 0
def _show_confirm_window(self, message, title):
        logger.debug('Window feedback: "{}"'.format(message))
        yes_pressed = messagebox.askyesno(
            message=message,
            title=title,
            icon='question',
            default='yes',
            parent=self.root,
        )
        # TODO(amin): Bind KP_Enter in all dialogs
        return yes_pressed


问题


面经


文章

微信
公众号

扫码关注公众号