Ошибка "неправильное количество аргументов" при инициализации класса фрейма в wxRuby
Я пытаюсь найти ориентиры с помощью wxRuby и использую это, возможно, устаревшее руководство с ruby 1.9.2p180 (2011-02-18) [i386-mingw32]
Это:
class MinimalApp < App
def on_init
Frame.new(nil, -1, "GUI Mockup").show()
end
end
работает: выводит пустое окно. Тем не менее, когда я пытаюсь добавить рамку в окно, так:
class MyFrame < Frame
def initialize()
super(nil, -1, 'My Frame Title')
end
end
и изменить "Frame.new(... " на "MyFrame.new", я получаю следующую ошибку:
C:/.../wxTest.rb:8:in `initialize': wrong number of arguments (3 for 0) (ArgumentError)
from C:/.../wxTest.rb:19:in `new'
from C:/.../wxTest.rb:19:in `on_init'
from C:/.../wxTest.rb:24:in `main_loop'
from C:/.../wxTest.rb:24:in `<main>'
На данный момент я застрял. Буду благодарен за любые предложения.
1 ответ
Решение
Итак, через несколько секунд после публикации я ответил на свой вопрос. Проблема заключалась в том, что
MyFrame.new.(nil, -1, "Multipass GUI Mockup").show()
устанавливает параметры дважды или что-то. Меняя его на
MyFrame.new.show()
сделал трюк.
D'о!