在我的程序中,我有24个文本框供用户用于输入。我想将每个文本框的内容分配给数组的索引。有没有办法在循环中执行此操作而不必每次都输出strItems(0) = MainForm.txtEntry1.text
?这是用Visual Basic编写的。
我正在尝试做的一个例子:
For intCount = 0 to (strItems.length - 1)
strItems(intCount) = txtEntry[intCount + 1]
Next
答案 0 :(得分:1)
如果您为所有文本框名称添加前缀(例如textBoxArray1),则可以遍历表单上的所有文本框并进行相应处理。像:
SECTION .data
text: db "Just some text" ;LENGTH = 14.
color: db 181
x: db 0
y: db 0
SECTION .text
global main
main:
mov bp, text ;STRING TO DISPLAY.
mov cx, 14 ;STRING LENGTH.
mov [x], byte 50
mov [y], byte 20
call color_string
;FINISH PROGRAM.
mov ax,4c00h
int 21h
;----------------------------------------------
;PARAMETERS : BP = OFFSET OF STRING TO DISPLAY.
; CX = STRING LENGTH.
; COLOR = VARIABLE WITH COLOR (0..255).
; X,Y = VARIABLES WITH COORDINATES.
color_string:
mov ax, ds
mov es, ax ;ES SEGMENT MUST POINT TO DATA SEGMENT.
mov ah, 13h ;SERVICE TO DISPLAY STRING WITH COLOR.
mov bh, 0 ;PAGE (ALWAYS ZERO).
mov bl, color
mov dl, x ;X (SCREEN COORDINATE).
mov dh, y ;Y (SCREEN COORDINATE).
int 10h ;BIOS SCREEN SERVICES.
ret
答案 1 :(得分:0)
您可以使用Linq将控件放入数组中。
Dim Array() As TextBox = Me.Controls.OfType(Of TextBox)().Where(Function(c) c.Name.Contains("")).ToArray()
Array.Reverse(Array)
在你看到空引号的地方,比如@Kevin说,你可以在你的名字前面找到那些文本框并填充它们,或者你可以像我一样把它留空,它会将表单上的每个文本框编入索引阵列。
然后你可以使用这样的东西来访问TextBox
Dim i As Integer = 0
Array(i).Text = "Stuff"