建议弹出菜单drracket

时间:2011-06-18 00:45:08

标签: scheme racket

我正在使用Racket图形工具包,我正在尝试显示一个建议弹出菜单。

我有一个可供选择的可用字符串列表,我想在文本字段中写入时在弹出菜单中显示它们。

我已设法显示它们,但您必须重新选择文本字段才能继续编写。每次选择文本字段时,弹出菜单都会消失。

这甚至可能吗?如果是这样我怎么能实现这个目标呢?

这里有一个小例子可以更好地解释我的自我:

(define (prueba)
  (let* ((ventana (new frame% (label "")))
     (sugerencia (new popup-menu%))
     (texto (new text-field% (label "prueba")(parent ventana)
                (callback (lambda (t e)
                            (new menu-item% (label (send t get-value))(parent sugerencia)
                                    (callback (lambda (i e) (void))))
                             (send ventana popup-menu sugerencia (+ 50 (send t get-x)) (+(send t get-height)(send t get-y))))))))
   (send ventana show #t)))

1 个答案:

答案 0 :(得分:1)

您不想在此处使用popup-menu%,这是您通过右键单击获得的上下文菜单类型。相反,您应该只创建一个新窗口(或者只是一个新的frame%,它将具有适当的回调以将建议插入主frame%