delphi - 如何在 Delphi 的 TStringGrid 中选择然后删除单元格?
问题描述
我知道如何将数据输入网格,但我还需要为选定的行制作删除按钮。我一直在寻找互联网,几乎一无所获。如何删除东西,我只是找不到任何如何选择特定单元格,然后,如何编辑/删除或对她做任何事情。这是我的意思的例子:
我通过鼠标或任何 1 个单元格选择,然后它选择(例如)该单元格所在的整行。之后,我单击按钮删除。如何告诉删除函数选择了哪一行。
解决方案
找到了一个答案:
创建过程:
procedure StringGridDeleteRow( AStringGrid:TStringGrid; ARow:integer );
var
nRow:integer;
begin
with AStringGrid do
begin
for nRow := ARow to RowCount - 2 do
Rows[nRow].Assign(Rows[nRow+1]);
Rows[RowCount-1].Clear;
RowCount := RowCount - 1
end;
end;
然后将此行添加到您的按钮:
StringGridDeleteRow(StringGrid1, StringGrid1.Row);
这比我想象的要容易!
推荐阅读
- protractor - 在量角器 6.0、角度 7 和甜蜜警报 2.0 中对甜蜜警报执行断言
- svn - 提交操作是否可以在没有冲突警告的情况下覆盖其他人的修改?
- ruby-on-rails - 如何使用 turbolinks-ios 制作混合应用程序
- java - 如何从我的活动中获取 Espresso 测试中动态的 Uri
- javascript - 问答游戏:如何在 DOM 上定位正确答案并将其隐藏
- c - 如何让我的程序读入 value=judges
- ios - PhotoLibrary 访问 .notDetermined,当拒绝时启用
- ruby-on-rails - LoadError:无法在 Rails 中自动加载常量
- angular - 行为主题 Sidenav 切换 Angular 7 材质
- javascript - Angularjs如何获取一周中的所有日期和日期