如何创建可点击的“标签云”来填充子表单?

Posted

技术标签:

【中文标题】如何创建可点击的“标签云”来填充子表单?【英文标题】:How to create a clickable "tag cloud" to populate a subform? 【发布时间】:2013-07-21 01:42:38 【问题描述】:

多年来,我一直在潜伏着阅读各种主题。专业上,我是一名系统接口专家/接口架构师。我可以用 tcl、Cloverleaf、HL7 甚至 Excel 创造奇迹,但我无法使用 Microsoft Access。它一再让我困惑和困惑。对我来说似乎简单而合乎逻辑的一切都不是 MS Access 所关心的。

所以,我来找你了。老实说,我什至不确定我能否用正确的“技术”词表达我想做的事情。我只知道完成后我希望事情如何运作。

我已经建立了一个非常“简单”的关系数据库,供收集句子或句子 sn-ps 以供写作使用/启发的作者使用。一共有三个表:

tblPhrases 包含一个自动编号字段 idxPhrases 和一个备注字段 PhrasetblTags 包含一个自动编号字段 idxTags 和一个备注字段 TagtblTagsToPhrases 包含一个自动编号字段 idxTagsToPhrases 和两个编号字段:Tags_indexPhrases_index

前两个表要求所有字段都是唯一的。

显然(或者不是?),第三个表是多对多连接。它允许有许多标签与一个短语相关联,并且多个短语与任何一个标签相关联。

我已经想出了如何设置表单和子表单,但正如您所见,它看起来很笨重,而且完全不是我想象的那样。

我真正想要的不是关键字/标签子表单中的下拉组合框——它确实从 tblTags 填充,当我选择某些内容时,正确填充 tblTagsToPhrases 并且当我在表单中返回该短语时,显示列表相关标签...

我真正想要的是让 tblTags 中的值出现在网页上的“标签云”中​​。然后我可以单击该值的超文本控件,它将填充一个文本字段,在选择之间添加逗号。然而,在幕后,它实际上只是添加到 tblTagsToPhrases。我也应该可以在那里输入一个新的标签。基本上,将字段视为书签站点上的标记字段。

如果我真的诚实,我也希望能够将短语显示为超文本,因为这样看起来不那么笨重,也不像数据库。

谁能给我一些从我所在的地方到那里的方向。

非常感谢您的任何帮助!

【问题讨论】:

【参考方案1】:

您需要 VBA 来执行此操作,使用表单的 Timer 事件来随机移动标签,使用一些详细的数学来让它们沿流向移动,而不是完全随机移动。每个标签(或文本框)首先必须填充字段值。如果您只需要静态标签云,则不需要 Timer 事件。

如果您不了解 VBA,那么您将不得不搜索,但我认为您不太可能找到这方面的示例(如果您知道,您能适应它吗?)。事实上,如果你让它工作,并包含动画,我希望它会表现出明显的闪烁。

我认为您应该问自己是否打算构建数据库或 Web 应用程序。 (如果您在 Access 上苦苦挣扎,为什么要更进一步并尝试让它做一些它不适合做的事情?)

【讨论】:

好吧,我愿意接受有关显示已输入“标签”的另一种方法的建议。我在输入字段时没有任何问题——我通常比大多数自动填充输入更快。 ;) 我的问题与记忆有关,因为我不记得我之前输入的所有“标签”,这就是为什么我想看到它们,所以我不创建半重复。而且,是的,我确实认为在子表单中有 1 到 6 个下拉控件是丑陋的。 :P

以上是关于如何创建可点击的“标签云”来填充子表单?的主要内容,如果未能解决你的问题,请参考以下文章

Wordpress 标签云:如何删除字体大小的内联样式?

在 VBA Access 中动态填充其他子表单的子表单

数据可视化设计:标签云wordcloud

PHP 创建标签云

任何方式来设置标签云小部件的样式,有很多不同的类名

如何在 obiee 中创建词/标签云