184270428 2019-12-15 13:34 采纳率: 0%
浏览 154
已结题

Delphi PicklList 显示问题,详细见图。

图片说明
Procedure TfrmsAA.dbgrdCellClick(Column: TColumnEh);
Begin
Inherited;
If (UPPERCASE(Column.FieldName) = 'ColNM') And (qry.FieldByName('ColPcode').AsString <> '') Then
Begin
TRY
IF Not (qry.State In [dsEdit, dsInsert]) Then
BEGIN
qry.Edit;
qry.Post;
END;
qry.DisableControls;
Column.PickList.clear;
Column.KeyList.clear;

  With Sys.QryTemp Do
  Begin
    close;
    sql.Clear;
    sql.add('SELECT Pcode FROM Table1 WHERE code=' + qry.fieldbyname('colpcode').asstring);
    open;
    While Not eof Do
    Begin
      dbgrd.FieldColumns['colnm'].PickList.Add(fieldByName('pcode').AsString);
      dbgrd.FieldColumns['colnm'].KeyList.Add(fieldByName('pcode').AsString);
      Next;
    End;
  End;
Finally
  qry.EnableControls;
End;

End;
End;

已确认是每次点击的时候,清除picklist导致,但是这种情况如何处理?是否有其他代替的方法?

  • 写回答

1条回答 默认 最新

  • threenewbee 2019-12-16 00:02
    关注

    调用refreash之类的方法刷新下dbgrid

    评论

报告相同问题?

悬赏问题

  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算
  • ¥15 java如何提取出pdf里的文字?
  • ¥100 求三轴之间相互配合画圆以及直线的算法
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考
  • ¥15 名为“Product”的列已属于此 DataTable
  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发