gpt4 book ai didi

delphi - DBImage 不以编程方式刷新

转载 作者:行者123 更新时间:2023-12-03 17:37:56 25 4
gpt4 key购买 nike

我难住了! D5ent。
我有一个表格,上面有十几个设计时 SpeedButton。
我有一个包含所有十二个按钮的标题、提示和字形的数据集。
当我运行数据库时,我可以分配标题、提示、选择和存储字形的位图。

当我使用 DBNavigator 单步执行时,它会正确显示每个按钮的每个位图的单个 DBImage。但是在运行时,并非如此。

我有这段代码可以遍历数据集,当我在 ShowModal 表单中时,所有按钮都有正确的单独标题和提示,但它们都具有与第一个按钮相同的字形。

procedure LoadButtons;
procedure SetButton(var aBtn : TSpeedButton);
begin
aBtn.Hint:=tblButtons.FieldByName('Hint').AsString;
aBtn.Caption:=tblButtons.FieldByName('Caption').AsString;
aBtn.Glyph.Assign(dbimgButton.Picture.Bitmap);
end;
begin
tblButtons.First;
BtnCtr:=1;
repeat
case BtnCtr of
1 : SetButton(btn1);
2 : SetButton(btn2);
3 : SetButton(btn3);
// ... to twelve
end;
tblButtons.Next;
Inc(BtnCtr);
until tblButtons.EOF;
end;

结尾;

我哪里错了?我搞砸了 Update、AutoDisplay、LoadPicture 等...

谢谢

最佳答案

如果您使用 DisableControls然后在循环遍历数据集时不会更新 db-aware 控件。如果您从这样的控件中分配字形,那么这就是为什么所有按钮都具有第一条记录的字形的原因。

关于delphi - DBImage 不以编程方式刷新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10167342/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com