Tk库的使用(2)

# Sample code from Programing Ruby, page 250
require 'tk'

class GifViewer

  def initialize(filelist)
    setup_viewer(filelist)
  end

  def run
    Tk.mainloop
  end

  def setup_viewer(filelist)
    @root = TkRoot.new {title 'Scroll List'}
    frame = TkFrame.new(@root)

    image_w = TkPhotoImage.new
    TkLabel.new(frame) do
      image image_w
      pack 'side'=>'right'
    end

    list_w = TkListbox.new(frame) do
      selectmode 'single'
      pack 'side' => 'left'
    end
      
    list_w.bind("ButtonRelease-1") do
      busy do
        filename = list_w.get(*list_w.curselection)
        tmp_img = TkPhotoImage.new { file filename }
        scale   = tmp_img.height / 100
        scale   = 1 if scale < 1
        image_w.copy(tmp_img, 'subsample' => [scale, scale])
        image_w.pack
      end
    end

    filelist.each do |name|
      list_w.insert('end', name) # Insert each file name into the list
    end

    scroll_bar = TkScrollbar.new(frame) do
      command {|*args| list_w.yview *args }
      pack    'side' => 'left', 'fill' => 'y'
    end

    list_w.yscrollcommand  {|first,last| scroll_bar.set(first,last) }
    frame.pack
  end

  # Run a block with a 'wait' cursor
  def busy
    @root.cursor "watch" # Set a watch cursor
    yield
  ensure
    @root.cursor "" # Back to original
end

end

viewer = GifViewer.new(Dir["H:/ͼƬ/QQGIf/*.gif"])
viewer.run

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: tk是 Python 的一个图形用户界面 (GUI) ,可以用来创建窗口、菜单、按钮、文本输入框等 GUI 元素。可以通过它在 Python 中创建复杂的图形界面。使用 tk时,需要先导入 tkinter 模块,然后使用 tkinter 模块中的各种函数和类。例如,可以使用 Tk() 函数创建一个顶层窗口,使用 Button() 函数创建一个按钮,使用 Entry() 函数创建一个文本输入框。使用 tk时,需要注意主事件循环 (mainloop) 的使用,因为 GUI 程序的主要循环就在这里进行。 示例代码: ``` import tkinter as tk window = tk.Tk() window.title("My Window") window.geometry("300x200") label = tk.Label(window, text="Hello, Tkinter!", font=("Arial", 16)) label.pack() button = tk.Button(window, text="Click Me", command=print_hello) button.pack() entry = tk.Entry(window, show=None) entry.pack() window.mainloop() ``` 在这段代码中,我们创建了一个窗口、一个标签、一个按钮和一个文本输入框。标签和按钮使用了 pack() 方法来调整它们在窗口中的位置。主事件循环在最后使用 mainloop() 方法启动。 ### 回答2: Python Tk是一个用于创建图形用户界面(GUI)的工具包。它是Python标准的一部分,提供了一个简单而强大的方式来构建和运行应用程序的图形界面。 Tk基于Tkinter模块,它是一个Python用于Tcl语言的接口。Tkinter允许Python程序员在应用程序中使用Tk的图形组件。它提供了创建窗口、按钮、标签、文本框等控件的功能,还可以通过绑定事件来实现交互。 使用Tk可以使开发人员更加容易地创建用户友好的界面。开发者可以使用Tk的各种函数和方法来设置和调整窗口的大小、位置和外观。他们还可以使用控件来设计应用程序的用户界面,以满足用户的需求。 Tk也具有一些有用的功能和特性,例如对话框、菜单、弹出窗口等。这些功能使开发者能够更加灵活地设计和管理应用程序的界面。 与其他图形相比,Tk在易用性和简洁性方面具有优势。由于它是Python的标准,因此无需额外安装即可使用。而且Tk的文档和教程资源丰富,使开发人员能够快速入门并掌握其使用方法。 总之,Python Tk是一个功能强大且易于使用的工具包,它提供了创建用户界面的各种控件和功能。无论是初学者还是经验丰富的开发者,都可以通过Tk构建出具有良好用户体验的应用程序。 ### 回答3: Python Tkinter是Python语言的标准GUI(图形用户界面)开发工具包。Tkinter提供了一组工具和组件,用于创建图形用户界面,可以与用户进行交互。 Tkinter内置了各种控件,如按钮、标签、文本框、滑块条、菜单等等。开发者可以通过调用这些控件的方法,设置控件的属性和样式,并为其添加事件处理程序,实现与用户的交互。 Tkinter使用非常简单,只需导入,并创建一个顶层窗口,然后在这个窗口中添加控件即可。最常用的创建窗口方法是Tk()函数,可以通过该函数创建一个顶层窗口。然后使用相应的控件类和方法来添加和定位控件。最后调用mainloop()方法进入主事件循环,等待用户的交互。 Tkinter不仅具有简单易用的特点,还非常强大。除了基本的控件外,还可以通过继承组合创建新的控件,实现更复杂的功能。此外,Tkinter还支持自定义主题,可以通过调整主题的样式来改变应用程序的外观。 Tkinter广泛应用于各类Python GUI应用程序的开发,包括桌面应用、科学计算、数据可视化、游戏等。它不仅是学习Python GUI开发的良好起点,也是开发快速原型和简单应用的首选工具。 总之,Python Tkinter是一套方便、简单、强大的工具和组件集合,用于创建图形用户界面。无论是初学者还是有经验的开发者,都可以通过使用Tkinter来开发各种Python GUI应用程序。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值