FXRuby FXFileDialog - каталог по умолчанию - PullRequest
0 голосов
/ 03 сентября 2008

в FXRuby; как настроить FXFileDialog на домашний каталог при его открытии?

1 Ответ

1 голос
/ 03 сентября 2008

Вот очень ленивый способ сделать это:

#!/usr/bin/ruby
require 'rubygems'
require 'fox16'
include Fox

theApp = FXApp.new

theMainWindow = FXMainWindow.new(theApp, "Hello")

theButton = FXButton.new(theMainWindow, "Hello, World!")
theButton.tipText = "Push Me!"

iconFile = File.open("icon.jpg", "rb")
theButton.icon = FXJPGIcon.new(theApp, iconFile.read)
theButton.iconPosition = ICON_ABOVE_TEXT
iconFile.close

theButton.connect(SEL_COMMAND) { 
fileToOpen = FXFileDialog.getOpenFilename(theMainWindow, "window name goes here", `echo $HOME`.chomp + "/")
}

FXToolTip.new(theApp)

theApp.create

theMainWindow.show

theApp.run

Это зависит от того, находитесь ли вы в * nix окне (или если установлена ​​переменная окружения $ HOME). Строки, которые конкретно отвечают на ваш вопрос:

theButton.connect(SEL_COMMAND) { 
fileToOpen = FXFileDialog.getOpenFilename(theMainWindow, "window name goes here", `echo $HOME`.chomp + "/")
}

Здесь первый аргумент - это окно, которому принадлежит диалоговое окно, второй - это заголовок окна, а третий - путь по умолчанию, с которого нужно начинать (в конце нужен символ "/", иначе он будет начните каталог выше с выбранной домашней папки пользователя). Проверьте эту ссылку для получения дополнительной информации о FXFileDialog.

...