delphi - Delphi 从字符串中设置 ComboEdit 项目?
问题描述
我目前在 ListView 中显示“商品”,listview 有文章、数量、iemsls 和名称。
在项目的 DoubleClick 上,我想读取变量并将它们放在 TEdit 字段中,并将“iemsls”放在预先编写好的项目的 ComboEdit 中,如何检查 ComboEdit 中的哪个项目与字符串相同并设置它到那个?
igiDoubleTap:
begin
global_norakstisanadoc_editing := true;
SelectedItemIndex := F_SS_MAIN.ListView2.Selected.index;
ListView2.Enabled := false;
SpeedButton6.Enabled := false;
SpeedButton7.Enabled := false;
quant_bef := (TListItemText(F_SS_MAIN.ListView1.Items.AppearanceItem[index].Objects.FindDrawable('Text2')).Text);
quant_aft := StringReplace(quant_bef, 'gb', '', [rfReplaceAll, rfIgnoreCase]);
Edit_artikuls_norakstisana.Text := ListView2.Items.Item[SelectedItemIndex].View.FindObject('artikuls').Data.ToString;
edit_daudzums_norakstisana.Text := quant_aft;
label_prece_from_ean.Text := ListView2.Items.Item[SelectedItemIndex].View.FindObject('prece').Data.ToString;
ComboEdit := ListView2.Items.Item[SelectedItemIndex].View.FindObject('iemsls').Data.ToString;
end;
这是目前我正在使用的 DoubleTap 方法
解决方案
在 VCL 和 FMX 中,TComboBox.Items
属性都是一个TStrings
对象,它有一个IndexOf()
方法,并且TComboBox
有一个ItemIndex
属性用于通过索引设置当前选定的项目。
所以,试试这个:
ComboEdit1.ItemIndex := ComboEdit1.Items.IndexOf(
ListView2.Items.Item[SelectedItemIndex].View.FindObject('iemsls').Data.ToString
);
推荐阅读
- delay - Gmail Api 间歇性延迟接收电子邮件
- flutter - 如何在颤动中使用 showTimePicker 作为 Widget?
- rxjs - 时间的流逝可以称为效果吗?
- buildbot - buildbot 中没有网格/控制台视图,尽管构建成功,但构建视图始终为空
- node.js - 在 Swift 命令行工具中未收到 DistributedNotificationCenter
- javascript - 在 javascritp 上替换一个表
- python - 如何在pyqt5中使背景图片透明?
- python - 在 pandas 中用不同大小的列表列展开多个列
- command-line - grep 命令未显示文件中的所有有效结果
- hybris - 变体和分类之间的区别