delphi编程,如何实现在文本框内输入数字按键按钮后赋值给StringGrid表格,再次输入点击后会增加一行
3个回答
展开全部
你描述的逻辑不是特别清楚,大概可以按照以下思路实现你想要的能力:首先,要实现StringGrid的自动排序,方法有多种,建议采用专门写一个函数对某个列进行排序的函数,当你点击按钮的时候调用一下即可,至于如何写排序这个我想不必多说,排序算法多的是,操作的数组是Stringgrid1.Cols,我想你应该明白,只要修改Stringgrid1.Cols这个数组,控件StringGrid中的数据自然就排好序了;再来说一下怎样把文本框的输入写入到StringGrid,这个更简单,只要在按钮点击后,把edit.text付给当前StringGrid的对应的Cell,怎么得到Cell的坐标,StringGrid有两个属性可以得到:col和row,使用这个坐标可以修改当前格的内容,如果按你所说的要新增一行的话,更简单,直接执行以下语句即可:rowCount:=RowCount+1;cells[1,rowCount-1]:=edit1.text;然后调用排序算法即可。
TableDI
2024-07-18 广告
2024-07-18 广告
在上海悉息信息科技有限公司,我们深知Excel在数据处理中的重要作用。在Excel中引用不同工作表(sheet)的数据是常见的操作,这有助于整合和分析跨多个工作表的信息。通过在工作表名称前加上感叹号“!”,您可以轻松地引用其他工作表中的数据...
点击进入详情页
本回答由TableDI提供
展开全部
这个是用TListBox控件就可以了,没必要是用StringGrid。
TListBox的Items属性是TStringList类型,可以直接排序,排序的前提是不能重复。
ListBox1.Items.Add(Edit1.Text)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
又是阁下,插入这样写。
procedure TForm1.Button1Click(Sender: TObject);
begin
StringGrid1.RowCount := StringGrid1.RowCount +1;
try
StrToFloat(Edit1.Text);
StringGrid1.Rows[StringGrid1.RowCount -1].Append(Edit1.Text);
except
ShowMessage('输入的不是数字!');
end;
end;
排序用冒泡排序,早上有说过。
procedure TForm1.Button1Click(Sender: TObject);
begin
StringGrid1.RowCount := StringGrid1.RowCount +1;
try
StrToFloat(Edit1.Text);
StringGrid1.Rows[StringGrid1.RowCount -1].Append(Edit1.Text);
except
ShowMessage('输入的不是数字!');
end;
end;
排序用冒泡排序,早上有说过。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询