vb中怎么可以让list中的数据不重复

vb中怎么可以让list中的数据不重复,第1张

一般是在添加的时候防止出现重复项,用以下代码

Private

Declare

Function

SendMessage

Lib

"user32"

Alias

"SendMessageA"

(ByVal

hwnd

As

Long,

ByVal

wMsg

As

Long,

ByVal

wParam

As

Long,

lParam

As

Any)

As

Long

Private

Const

LB_FINDSTRINGEXACT

=

&H1A2

Private

Sub

Command1_Click()

Dim

ret

As

Long

ret

=

SendMessage(List1.hwnd,

LB_FINDSTRINGEXACT,

-1,

ByVal

Text1.Text)

If

ret

=

-1

Then

List1.AddItem

Text1.Text

Else

List1.ListIndex

=

ret

End

If

End

Sub

Private

Sub

Form_Load()

List1.AddItem

"aaa"

List1.AddItem

"ccc"

List1.AddItem

"bbb"

List1.AddItem

"ddd"

List1.AddItem

"eee"

End

Sub

list值循环添加对象值重复的原因和解决方法如下:

record在new之后得到了一块内存地址;

而你的set只是改变了这个对象的值,却不会为该对象重新分配一块内存;

你的recordList.add(record)相当于保存了record对象的引用地址;

所以只要你改变record对象,list中所有元素就都会改变;

解决方法是将HFCZ record = new HFCZ()这一个放在你的循环内,分配多块内存地址就可以了。

list:表, 一览表明细表目录名单。 在计算机领域指序列。在编程语言中List 是类库中的一个类,可以简单视之为双向连结串行,以线性列的方式管理物件集合。list 的特色是在集合的任何位置增加或删除元素都很快,但是不支持随机存取。list 是类库提供的众多容器(container)之一,除此之外还有vector、set、map、?等等。list 以模板方式实现(即泛型),可以处理任意型别的变量,包括使用者自定义的资料型态


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11774873.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存