一种方法是将实际值存储在主表中:M
and F
, e.g.
ID FirstName Gender
-- --------- ------
1 Gord M
2 Angie F
并创建一个名为 [Genders] 的参考表,如下所示:
TableValue Language Translation
---------- -------- -----------
M fr_ca masculin
F fr_ca féminin
M en_us Guy
F en_us Girl
M en_ca Male
F en_ca Female
在您的表单上,创建一个隐藏的未绑定文本框,名为txtFormLanguage
,并在 Form_Load 事件处理程序中像这样填充它:
Private Sub Form_Load()
Me.txtFormLanguage = IIf(IsNull(Me.OpenArgs), "en_ca", Me.OpenArgs)
End Sub
现在您的组合框可以使用以下内容作为其Row Source
...
SELECT TableValue, Translation FROM Genders WHERE (((Genders.Language)=[txtFormLanguage]));
...并且具有类似于以下的其他属性:
装订柱:1
列数:2
列宽:0";1"
当表单正常打开时(没有OpenArgs
)...
Docmd.OpenForm "ClientForm", acNormal, , , acFormEdit, acWindowNormal
...它默认为en_ca
(英语、加拿大)并且组合框显示
Male
Female
当表格打开时fr_ca
(法语、加拿大)...
Docmd.OpenForm "ClientForm", acNormal, , , acFormEdit, acWindowNormal, "fr_ca"
...组合框显示
masculin
féminin