请教高手,关于索引问题

NightWind999 2004-05-10 06:12:01
我想做一个带有索引的程序,一个textbox一个listbox,listbox里的所有项目都是中文的,在textbox里输入汉字的拼音字母就可以检索到相关的项目,检索结果按拼音排序,请问怎么做?
我用sendmessage试了,对于英文的可以,但中文的不行,有什么函数或方法可以实现,给段关键地方的代码,谢谢!
...全文
123 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
northwolves 2004-05-10
  • 打赏
  • 举报
回复
可以利用LIST 的TAG 属性,也可以从数据库或数组中读取拼音,动态添加到列表框。举个百家姓的例子:


'将 list1 的 sort 属性设为 true

Private Sub Form_Load()
Text1.Text = ""
End Sub

Private Sub Text1_Change()'输入拼音试试,如ZHANG
Dim temp, temp2
Const a = "#zhao*赵,#qian*钱,#sun*孙,#li*李,#zhou*周,#wu*吴,#zheng*郑,#wang*王,#feng*冯,#chen*陈,#chu*褚,#wei*卫,#jiang*蒋,#shen*沈,#han*韩,#yang*杨,#zhu*朱,#qin*秦,#you*尤,#hu*许,#he*何,#lv*吕,#shi*施,#zhang*张,#kong*孔,#cao*曹,#yan*严,#hua*华,#jin*金,#wei*魏,#tao*陶,#jiang*姜,#qi*戚,#xie*谢,#ju*邹,#yu*喻,#bai*柏,#shui*水,#dou*窦,#zhang*章,#yun*云,#su*苏,#pan*潘,#ge*葛,#xi*奚,#fan*范,#peng*彭,#lang*郎,#lu*鲁,#wei*韦,#chang*昌,#ma*马,#miao*苗,#feng*凤,#hua*花,#fang*方,#yu*俞,#ren*任,#yuan*袁,#liu*柳,#feng*酆,#bao*鲍,#shi*史,#tang*唐,#fei*费,#lian*廉,#cen*岑,#xue*薛,#lei*雷,#he*贺,#ni*倪,#tang*汤,#teng*滕,#yin*殷,#luo*罗,#bi*毕,#hao*郝,#wu*邬,#an*安,#chang*常,#le*乐,#yu*于,#shi*时,#fu*傅,#pi*皮,#bian*卞,#qi*齐,#kang*康,#wu*伍,#yu*余,#yuan*元,#bu*卜,#gu*顾,#meng*孟,#ping*平,#huang*黄"
temp = Split(a, ",")
List1.Clear
If Len(Text1.Text) > 0 Then
temp2 = Filter(temp, "#" & LCase(Text1.Text))
For i = 0 To UBound(temp2)
List1.AddItem Split(temp2(i), "*")(1)
Next
End If
End Sub
ryuginka 2004-05-10
  • 打赏
  • 举报
回复
用数据库啊
artoksxb 2004-05-10
  • 打赏
  • 举报
回复
希望有高手能够帮助你,祝你成功!
lujianyu1189 2004-05-10
  • 打赏
  • 举报
回复
如果是按拼音检索的话比较困难如果是按中文文字检索的话还不是挺难的。

7,762

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧