MST
星途 面试题库

面试题:Ruby桌面应用开发中如何处理窗口事件

在Ruby的桌面应用开发场景下,假设使用常用的Ruby桌面开发框架(如Tk等),描述如何捕获并处理窗口的关闭事件,给出相应的代码示例。
23.9万 热度难度
编程语言Ruby

知识考点

AI 面试

面试题答案

一键面试

在Ruby中使用Tk框架捕获并处理窗口的关闭事件,可以通过 protocol 方法来实现。以下是示例代码:

require 'tk'

root = TkRoot.new do
  title "窗口关闭事件处理示例"
  geometry "300x200"
end

root.protocol('WM_DELETE_WINDOW') do
  # 在这里编写处理窗口关闭事件的代码
  puts "窗口正在关闭,执行一些清理操作等"
  Tk.destroy
end

Tk.mainloop

在上述代码中:

  1. root.protocol('WM_DELETE_WINDOW') 用于捕获窗口的关闭事件。
  2. 在代码块中,可以编写你想要在窗口关闭时执行的操作,比如保存数据、关闭文件等。
  3. Tk.destroy 用于正常关闭Tk窗口。