From: Morton Goldberg Date: 2006-09-01T11:12:49+09:00 Subject: Re: TK help I don't know why you say you can't unpack your button -- it's possible to both unpack and disable buttons, and then repack and re- enable them. Consider the following code: require 'tk' DEBUG = [] begin root = TkRoot.new {title 'Button Demo'} unpack_button = TkButton.new(root) { text 'Unpack Me' command {unpack_button.unpack} } unpack_button.pack disable_button = TkButton.new(root) { text 'Disable Me' command {disable_button.state = 'disable'} } disable_button.pack reset_button = TkButton.new(root) { text 'Reset' command { unpack_button.pack('before'=>disable_button) disable_button.state = 'normal' } } reset_button.pack # Set initial window geometry; i.e., size and placement. win_w, win_h = 200, 100 # root.minsize(win_w, win_h) win_lf = (root.winfo_screenwidth - win_w) / 2 root.geometry("#{win_w}x#{win_h}+#{win_lf}+50") # Make Cmnd+Q work as expected. This is for OS X. root.bind('Command-q') {Tk.root.destroy} Tk.mainloop ensure puts DEBUG unless DEBUG.empty? end Regards, Morton On Aug 31, 2006, at 8:43 PM, Mohammad --- wrote: > Okay so I set up a greeting AI for my sceince projet, (cool right?) > but > I got a problem: when he ask for a new key word I can't 'un-pack' the > button so it's always there then if it happens again :), get ready for > this, it does it again! My fault in the code, but I don't know what > else > to do, so here's the code that I think needs the editing: > submit = TkButton.new(text) { > image submitbutton > command { > aa = grem.how_are_you(text_awnser) > ga.configure("text"=>aa) > if aa.include?("I don't know what that means") > submit_helpg = TkButton.new(text){text "New positive keyword"; > command {add_word(new_word,"yes")}}.pack("side"=>"bottom") > submit_helpb = TkButton.new(text){text "New negative keyword"; > command {add_word(new_word,"no")}}.pack("side"=>"bottom") > helpme = TkEntry.new(text){ textvariable new_word > }.pack("side"=>"bottom") > end > } > }.pack