ListAnimate包含幻灯片等控件

时间:2011-07-14 06:00:18

标签: image wolfram-mathematica

这可能是对ListAnimate的滥用,但我正在使用它来翻阅一堆图像。 当图像足够少时,我可以用鼠标抓住滑块,并在图像之间来回轻松翻转。

但是当有太多的东西时,一个接一个地翻阅它们是非常棘手的。 有没有办法简单地使用箭头键(或任何键)在图像中前后翻转,有点像幻灯片?

3 个答案:

答案 0 :(得分:4)

这是一个简单的键盘控制幻灯片:

SlideShow[list_List] := 
 With[{len = Length[list]}, DynamicModule[{pos = 1}, 
      EventHandler[Dynamic[Pane[list[[pos]]]], 
                {"RightArrowKeyDown" :> (pos = Mod[pos + 1, len, 1]), 
                 "LeftArrowKeyDown" :> (pos = Mod[pos - 1, len, 1]), 
                 "UpArrowKeyDown" :> (pos = 1), 
                 "DownArrowKeyDown" :> (pos = len)}]]]

然后通过选择输出并使用箭头键来控制幻灯片:
right = forward,left = back,up = first,down = last,

例如:

SlideShow[{"a","b","c","d"}]

一些示例图片:

pics = ExampleData /@ ExampleData["TestImage"][[{1, 2, 3, 4}]]

SlideShow@pics

(*想象一下这里的屏幕截图*)

这可以打扮成框架,按钮等......

答案 1 :(得分:2)

我刚注意到SlideView或FlipView将完全按照我的意愿行事! (除了他们似乎都没有提供键盘控制,这将是非常好的。)

答案 2 :(得分:2)

以下也有效:

DynamicModule[{i = 1},
 EventHandler[SlideView[{a, b, c, d}, Dynamic[i]],
  {"RightArrowKeyDown" :> (i = Min[i + 1, 4]),
   "LeftArrowKeyDown" :> (i = Max[i - 1, 1])}]]