CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Delphi >  VCL组件开发及应用

请会BCB的朋友帮我把一段BCB代码转成DELPHI代码,好吗?(只有三行)。多谢!

楼主qdxby(足球小子)2002-10-07 17:13:58 在 Delphi / VCL组件开发及应用 提问

int   nIndex   =   SendMessage(ComboBox1->Handle,   CB_FINDSTRING,  
          -1,   (long)ComboBox1->Text.c_str());  
  if   (nIndex!=CB_ERR)   ComboBox1->ItemIndex   =   nIndex;  
  问题点数:20、回复次数:9Top

1 楼ikumei(雷欧纳德·布莱特)回复于 2002-10-07 17:24:50 得分 0

nIndex   :=   SendMessage(ComboBox1.Handle,   CB_FINDSTRING,  
          -1,   LongInt(ComboBox1.Text.c_str()));  
  if   nIndex   <>   CB_ERR   then  
      ComboBox1.ItemIndex   :=   nIndex;Top

2 楼pazee(耙子)(今年过年不收礼,收礼只收尿不湿)回复于 2002-10-07 17:29:24 得分 0

var  
      nIndex:   integer;  
      szStr:   array[0..255]   of   char;  
   
  begin  
      ...  
      StrPCopy(szStr,   Caption);  
   
      nIndex=   SendMessage(  
            ComboBox.Handle,  
            CB_FINDSTRING,  
            -1,  
            integer(@szStr)  
      );  
      if(nIndex   <>   CB_ERR)   then  
          ComboBox.ItemIndex:=   nIndex;Top

3 楼qdxby(足球小子)回复于 2002-10-07 19:14:19 得分 0

以上两种方法都不行啊。哪位高人能解决啊。Top

4 楼zswang(伴水清清)(专家门诊清洁工)回复于 2002-10-07 19:58:59 得分 15

(*//  
  声明:  
      本人保证所提供的方法是所知的最好方法  
      解答问题纯属公益性质  
      所以请不要向我追问  
      如果有时间自会关注后续问题  
  //*)  
   
  var  
      vIndex:   Integer;  
  begin  
      vIndex   :=   SendMessage(ComboBox1.Handle,   CB_FINDSTRING,  
          -1,   Integer(PChar(ComboBox1.Text)));  
      if   vIndex   <>   CB_ERR   then   ComboBox1.ItemIndex   :=   vIndex;  
  end;  
  Top

5 楼qdxby(足球小子)回复于 2002-10-07 22:44:53 得分 0

伴水兄,你给的代码没有错误。但并不能实现和那段BCB代码一样的功能。  
   
  如果ComboBox1的Item有’我们‘,‘你们’,‘他们’,用那段BCB的代码在ComboBox1中输入一个’你‘,ComboBox1.Text就变成‘你们’,其中’们‘是被选中状态。我就想要这种效果。但你的那段代码作不到。  
   
  另外,如果还想实现ComboBox1的下拉框拉下来,‘你们’被选中,还  
  应加些什么代码?  
   
  上帝保佑你能来。  
  Top

6 楼zhangqi_pku()回复于 2002-10-08 07:55:08 得分 5

下面是经过测试正确的代码:  
   
  procedure   TForm1.ComboBox1Change(Sender:   TObject);  
  var  
      vIndex:   Integer;  
  begin  
      vIndex   :=   SendMessage(ComboBox1.Handle,   CB_FINDSTRING,  
          -1,   lparam(lpcstr(ComboBox1.Text)));  
      if   vIndex   <>   CB_ERR   then  
          ComboBox1.ItemIndex   :=   vIndex;  
  end;  
  Top

7 楼qdxby(足球小子)回复于 2002-10-08 08:57:19 得分 0

TO:zhangqi_pku()    
  不知你是怎么测试通过的,我怎么没取得我要得效果?Top

8 楼qdxby(足球小子)回复于 2002-10-09 15:01:23 得分 0

HELP,HELP。。。。。Top

9 楼zwjchina(蒲石)回复于 2002-10-09 15:19:40 得分 0

我也测试通过,唯一不符合你要求的是“你们”同时都被选中了,而不是“你”没选中,“们”被选中的状态。Top

相关问题

  • 如何将这段Delphi代码转成BCB
  • 谁可以将以下Delphi程序写成BCB版?多谢
  • 关于delphi语句转为bcb的问题!(多谢帮忙!!)
  • 求答:VC++转成DELPHI??
  • C++ Builder函数转成 Delphi
  • 请问怎么将CString转成in_addr呢?多谢了!
  • Delphi转成BCB,虽然通过编译(DLL),但使用时提示函数名没找到。
  • 请提供Delphi好书,下载地址更好,多谢多谢
  • 急!!!请问斑主,我如何把可用分或参与分转成专家分给别人??????,多谢
  • Delphi-->BCB

关键词

  • 代码
  • bcb
  • 测试
  • combobox1
  • vindex
  • nindex
  • findstring
  • cb
  • 选中
  • itemindex

得分解答快速导航

  • 帖主:qdxby
  • zswang
  • zhangqi_pku

相关链接

  • Delphi类图书
  • Delphi类源码下载
  • Delphi控件下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo