求combobox的详细用法?

ntcxh 2004-12-23 02:16:28
本人对combobox的使用不是太熟悉现向各位大侠请教一二:
怎样在edit的框中输入内容时,下拉框中的内容自动搜索并且下拉框自动滚动到相应的内容上;
如果在EDIT的框中输入的内容在列表框中找不到,怎样将此内容加入到相应的表中,加入、编辑或修改程序在什么地方写?怎样写?
...全文
333 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaolong83 2004-12-26
  • 打赏
  • 举报
回复
up
CityHost 2004-12-26
  • 打赏
  • 举报
回复
学习
icwin 2004-12-24
  • 打赏
  • 举报
回复
字段的内容,反正也还是要添加到combobox中的啊,向ccrun学习
ntcxh 2004-12-24
  • 打赏
  • 举报
回复
但对于本人的COMBOBOX的数据来源于某一数据表的某一字段的内容.怎样新增呢?我想在输入内容时如果找不到就往表中的相应字段下增加,该怎么做?
milkwayhong 2004-12-23
  • 打赏
  • 举报
回复
头文件增加
Private: WORD LastKey;
milkwayhong 2004-12-23
  • 打赏
  • 举报
回复
在edit的框中输入内容时,下拉框中的内容自动搜索并且下拉框自动滚动到相应的内容上
实现ComboBox输入文字的自动完成
作者: ccrun整理 ,如转载请保证本文档的完整性,并注明出处。
欢迎光临 C++ Builder
研究,http://www.ccrun.com/doc/go.asp?id=560
WORD lastkey ;

//---------------------------------------------------------------------------
void __fastcall TForm1::ComboBox1Change(TObject *Sender)
{
String value = ComboBox1->Text ;

// If the user tried to delete he must not want to
change anything.
if (lastkey == '\b' || lastkey == VK_DELETE)
{
lastkey = 0 ;
return ;
}
lastkey = 0 ;
// 确保使用者没有在中间插入字符
if (ComboBox1->SelStart != value.Length ())
return ;

// 在下拉列表中寻找匹配项.
int index = SendMessage (ComboBox1->Handle,
CB_FINDSTRING, -1, (LPARAM) value.c_str ()) ;
if (index >= 0)
{
// 找到匹配项并显示.
ComboBox1->ItemIndex = index ;
String newtext = ComboBox1->Text ;
SendMessage (ComboBox1->Handle, CB_SETEDITSEL, 0,
MAKELPARAM (value.Length (), -1)) ;
}
}
//---------------------------------------------------------------------------
void __fastcall TForm1::ComboBox1KeyDown(TObject
*Sender, WORD &Key,
TShiftState Shift)
{
// 按下的最后一个键值.
lastkey = Key ;
}
//---------------------------------------------------------------------------

13,870

社区成员

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

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