Genie ile küçük bir uygulamaya bir iletişim kutusu eklemeye çalışıyorum. headerbar button'a tıklandığında açılması gereken bir açık dosya iletişim kutusu.Genie'de bir anahtar arabirimi nasıl görünür?
Genie'de örnekler eksiktir, bu yüzden şimdi valadan bir şeyleri uyarlamaya çalışıyorum. Ancak, bulduğum tüm örnekler Genie'ye çeviri yapamadığım bir geçiş komutu kullandı.
Bu
vala kodudur:public void on_open_image (Button self) {
var filter = new FileFilter();
var dialog = new FileChooserDialog ("Open image",
window,
FileChooserAction.OPEN,
Stock.OK, ResponseType.ACCEPT,
Stock.CANCEL, ResponseType.CANCEL);
filter.add_pixbuf_formats();
dialog.add_filter (filter);
switch (dialog.run())
{
case ResponseType.ACCEPT:
var filename = dialog.get_filename();
image.set_from_file (filename);
break;
default:
break;
}
dialog.destroy();
}
Ve bu önceki koddan çalıştı budur:
def openfile (self:Button)
var dialog = new FileChooserDialog ("Open file",
window,
FileChooserAction.OPEN,
Stock.OK, ResponseType.ACCEPT,
Stock.CANCEL, ResponseType.CANCEL)
switch (dialog.run())
case ResponseType.ACCEPT
var filename
filename = dialog.get_filename()
image.set_from_file (filename)
break
default
break
dialog.destroy()
Açıkçası case ifadesi de hata verir. Genie'de anahtar nasıl kullanılır?
Think olacaktır. "break" mevcut durum gövdesinden çıkar; Sonunda 'break' yoksa, sonraki 'case''e düşer. Genie'yi tanımıyorum, bu yüzden eşdeğerinin ne olduğunu bilmiyorum. – andlabs