FileMaker中国论坛 | FileMaker学习,构筑,使用 | FileMaker商业开发|FileMaker中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 5965|回复: 3

使用FileMaker实现动态按钮(1) [复制链接]

Rank: 2

发表于 2012-3-16 11:23:10 |显示全部楼层
注:本文是转自MacGeek 的博客.
    本转发已得到MacGeek同意.^^  (做人不可方舟子^^)
博客地址:http://blog.sina.com.cn/s/blog_495e704c01010hdz.html
使用FileMaker制作解决方案时可能会出现这样一种情况,用户按了一个按钮,进入下一步,按钮的图标需要变化,下面就说说怎么实现这样的功能。
首先先建立一个容器字段,叫做Icons,把Icons设置成为全局字段,并且根据你要的按钮的状态数设置它的重复数,例如你的按钮需要3种状态,则设置Icons的重复数(repetition)为3。
在浏览模式下,把3个不同的图片分别插入到Icons字段的3的重复里。(这3个图片就是你的按钮的3个不同的背景)
然后再建立一个容器字段叫做Buttons,它就是你的动态按钮,把这个字段的值设置为自动键入计算:GetRepetition (Icons; 1)

使用道具 举报

Rank: 2

发表于 2012-3-16 11:29:25 |显示全部楼层
然后再建立一个脚本,脚本里含有一个步骤Set Field[Icons;],用来动态的设置Icon字段的值,也就是动态的显示不同的背景;设置Icon为这样一个计算表达式:
Case (
icons::Buttons = GetRepetition (icons::Icons; 1); GetRepetition (icons::Icons; 2);
icons::Buttons = GetRepetition (icons::Icons; 2); GetRepetition (icons::Icons; 3);
icons::Buttons = GetRepetition (icons::Icons; 3); GetRepetition (icons::Icons; 1);
GetRepetition (icons::Icons; 1)
)
这个计算表达式的作用就是判断当前Button字段的值,如果是第一幅图,用户点击后就变成第二幅图,以此类推。
最后,进入(Layout)布局模式,右键点击Buttons字段,选择“按钮设置”,并让它运行刚建立的那个脚本,回到浏览模式看看,按钮(Button字段)是不是每次点击后都变化一次。当然,点击按钮后的其他业务逻辑也需要加到脚本里

使用道具 举报

Rank: 9Rank: 9Rank: 9

发表于 2012-3-16 16:23:17 |显示全部楼层
谢谢分享,我还是喜欢 用全局字段解决。

使用道具 举报

Rank: 1

发表于 2013-2-4 13:30:15 |显示全部楼层
此文不错,但有一个小BUG,“Set Field[Icons;]”应为Set Field[Icons::Buttons;],其它均测试通过。
非常感谢。

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

Archiver|FileMaker中国工作室

GMT+8, 2019-6-26 09:59 , Processed in 0.188955 second(s), 11 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部