【发布时间】:2015-04-08 12:02:50
【问题描述】:
如何在vb 6.0中按制表符或空格时将第一个字母变为大写?
我的代码如下
txtFirstName.Text = UCase$(txtFirstName.Text)
但在制表符或空格后不会改变
【问题讨论】:
-
$符号有什么用? -
@Nadeem_MK 这是老式的 VB6 语法。 VB6 没有本地方法来仅更改第一个字母。我们也不知道代码的位置或如何(甚至是否)调用它。
-
@Plutonix 这与老式语法无关。 VB6 中的字符串函数成对存在——一个接受并返回
Variants,另一个接受并返回Strings。强类型的以$结尾。两者在不同的上下文中都很有用,所以如果你有一个字符串变量开头,最好使用UCase$而不是UCase。 -
@GSerg、
RTrim$、UCase$等实际上是非常可追溯到 ROM Basic 的老派。非类型说明符变体(UCase)是相对较新的(VB5 或 6)。但是两个版本都接受并返回字符串。也许 vba 或其他东西使用变体,但不是 VB6。从对象浏览器(具有两个定义):Function UCase(String) ...Returns the specified string, converted to uppercase -
@Plutonix
String这里是参数的名称,而不是类型。当类型为Variant时,对象浏览器会完全忽略它。与UCase$(String As String)比较。还要注意UCase(String)没有返回类型,这再次意味着返回类型被省略,因为它是Variant。另一个是UCase$(String As String) As String。同样的事情发生在 VBA 中。但是你说得对,美元符号本身起源于很久以前。
标签: vba vb6 vb6-migration