문제

Ruby/GTK에서 Panes와 함께 응용 프로그램을 만들고 있습니다. 판의 크기가 조정되면 몇 가지 일을해야합니다. 그러나 어떤 신호를 사용할 것인지는 알 수 없습니다. 나는 그것이 'accept_position'이라고 생각하지만 작동하지 않는 것 같습니다. 이것은 내 문제를 보여주는 샘플 앱입니다 ...

#!/usr/bin/env ruby

require 'gtk2'

window = Gtk::Window.new(Gtk::Window::TOPLEVEL)
window.set_title  "Panes"
window.border_width = 10
window.set_size_request(225, 150)
window.signal_connect('destroy') { Gtk.main_quit }
window.signal_connect('delete_event') { false }

button1 = Gtk::Button.new("Resize")
button2 = Gtk::Button.new("Me")

button1.signal_connect( "clicked" ) { window.destroy }
button2.signal_connect( "clicked" ) { window.destroy }

paned = Gtk::VPaned.new
paned.add1(button1)
paned.add2(button2)

paned.signal_connect( "accept_position" ) { 
 puts "hello"
 false
}

window.add(paned)
window.show_all
Gtk.main 

'accept_position'호출은 해고되지 않습니다. 이 원인이 무엇인지/수정하는 방법에 대해 아십니까?

도움이 되었습니까?

해결책

'accept_position' 키보드 신호는 키보드를 사용하여 창을 크기로 조정할 때만 방출됩니다.

나는 루비를 모른다. 그러나 C에서 당신이 원하는 신호는 'notify::position'. notify a GObject 속성이 값을 변경할 때마다 발사되는 신호. 추가하면 a 세부 사항, 와 같은 position, 연결할 때 신호 이름으로 그 구체적인 속성은 그 가치를 변경합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top