有没有办法右对齐ListBox中的数字列

时间:2010-10-13 18:18:43

标签: ms-access listbox text-alignment

我们有一个包含多列的标准Access列表框。有没有办法让整数或货币列右对齐?

6 个答案:

答案 0 :(得分:5)

没有。我见过的最接近的是JustiCombo,它是一个数据库,包含中心和右对齐List和Combo Box数据的函数。它可以通过分析字体属性和字符宽度来使用比例字体。它也填充了字段前面的空格,使数据显示为中心/右对齐。它做得最好,但你可以看到一些锯齿。但是,也许我太过批评了。

答案 1 :(得分:3)

据我所知,不是传统意义上的,不是。我相信有一些第三方产品可能能够做到这一点,但是在我使用的任何版本中都没有列表框的本地ColumnAlignment属性(但是没有使用Access 2007,因为它的价值)。

根据您加载列表框的方式,可以使用固定宽度的字体(例如Courier)并使用适当数量的空格填充数字,以模拟右对齐。这不是理想的,但它可能值得一试。

答案 2 :(得分:3)

根据您的查询,列的对齐方式将从基础表继承。因此,转到表格,选择列,中心/右/左对齐,然后您的文本框应该具有相同的对齐方式。这对于计算字段不起作用,但对大多数其他字段都适用。

答案 3 :(得分:2)

  1. 将列表框转换为组合框
  2. 使您转换为右对齐的组合框
  3. 将其再次转换为列表框

答案 4 :(得分:1)

在VB中它是:

Format(Format("10000", "0.00%"), "@@@@@@@@@@")其中“@”的数量是字符串的宽度,右对齐字符串。

在VBA中,您可以使用:

xFormat(Format("10000", "0.00%"), "@@@@@@@@@@")其中

Function xFormat(ByVal s, ByVal width As String) As String

    Dim temp As String
    Dim deltaL As Integer

    deltaL = Len(width) - Len(s)
    If deltaL > 0 Then
        temp = Space(deltaL) & s
    Else
        temp = s
    End If
    xFormat = temp
End Function

答案 5 :(得分:0)

我解决它的方法是做以下几点:

转到File -> options -> Client settings -> General alignment

将设置更改为文本模式,这对我有用。