smalltalk - 如何向用户询问文件名?

标签 smalltalk pharo

搜索 FileDialog 的调用
我想问用户在 Pharo 4.0 中的文件名
通过观察员我找到了类(class)

  FileDialogWindow
用一种方法
  answerFileName
寻找#answerFileName 的发件人我要去上课
  UITheme
在方法中调用它的地方
  chooseFileNameIn: aThemedMorph 
  title: title 
  extensions: exts 
  path: path preview: preview
从那里我来上课
 TEasilyThemed
用方法
 chooseFileName: title extensions: exts path: path preview: preview
从那里我终于去上课了
  WidgetExamples class >> exampleDialogs
然后我接到了电话
WidgetExamples exampleBuilder 
chooseFileName: 'Pick a file name' 
extensions: nil path: nil preview: nil.
然而print it此表达式的不返回文件名。

调用文件对话框的常规方法是什么?
回答后补充问题
提到了提供此服务的两个类。
  • UIManager
  • UI主题

  • UIManager评论
    UIManager 是各种 UI 请求的调度程序。
    UI主题评论
    用户界面主题的通用父类(super class)。提供以标准方式创建新变形的方法、各种“服务”(如文件对话框、消息对话框等)以及自定义各种变形外观的方法。
    尽管在概念上很抽象,但没有“遗漏”任何代码。因此,子类应该覆盖它们希望更改的方面。
    这两种方法有什么区别?

    最佳答案

    最简单的方法是使用:

    UIManager default chooseFileMatching: nil
    

    您可以将模式指定为:
    UIManager default chooseFileMatching: #('*.jpg' '*.png')
    

    您还可以为对话框指定标签:
    UIManager default
        chooseFileMatching: #('*.jpg' '*.png')
        label: 'Please select and image to process'
    

    关于smalltalk - 如何向用户询问文件名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32198476/

    相关文章:

    formatting - 如何在 Smalltalk/Pharo 中打印固定字符数的数字

    performance-testing - Pharo 系统调整选项

    factory - Smalltalk 相当于工厂方法?

    user-interface - 为什么Squeak界面的外观和行为如此陈旧?

    smalltalk - 如何每小时自动保存一张 Pharo 图像?

    smalltalk - Seaside - 当在 "html render:"中直接调用 "renderContentOn: html"时,在 WAComponent 中实现 #children 有什么意义?

    smalltalk - 如何在 Pharo/Squeak 中唯一标识转录窗口?

    smalltalk - 有人在 Pharo2.0 中使用过 Magma 吗?

    smalltalk - **连接两个 Smalltalk 的**方法是什么?

    smalltalk - 在 Pharo Finder 中按示例查找是如何工作的?