这个什么意思啊?
解决方案 »
- 极度菜鸟问题
- 各位大侠,大虫,请访问以下网站,访问者均有分。并无恶意呵!
- DELPHI里怎么定义日期类型??99/05/01-99/06/01怎么做??
- 怎么建立WINNT连接
- Delphi中指向函数的指针怎么定义?
- 关于Delphi中控件数组的问题
- 探讨数据库设计的最实际的原则!高手新手都请进!!
- 怎么在exe和dll中存取图片和声音,望诸位大虾不吝赐教,万分感谢
- 若没有要导出的Excel的模板文件,能将DBGrid中的数据导出吗?
- 在做报表时,预览左右显示不全,但又没有左右滚动条,如何显示滚动条?谢谢!
- 请问,如何去掉Delphi程序自动添加的菜单快捷键?
- 发个人简历一份,求北京程序员工作!谢谢大家捧场。
最大index最好在长度后面减1;字符串型下标以1开始
比如说
var s:string;
s:='1234';
showmessage(s[0]);//D7下会出错但是其他数组,比如说Components,则是Components[0]开始到Components(ComponentCount-1)
begin
if copy(str,0,1)='1' then
main.MainMenu1.Items.Items[0].Items[0].Enabled:=false else
main.MainMenu1.Items.Items[0].Items[0].Enabled:=false;
if copy(str,1,1)='1' then
main.MainMenu1.Items.Items[0].Items[1].Enabled:=true else
main.MainMenu1.Items.Items[0].Items[1].Enabled:=false;
if copy(str,2,1)='1' then
main.MainMenu1.Items.Items[0].Items[2].Enabled:=false else
main.MainMenu1.Items.Items[0].Items[2].Enabled:=false;
if copy(str,3,1)='1' then
main.MainMenu1.Items.Items[0].Items[3].Enabled:=true else
main.MainMenu1.Items.Items[0].Items[3].Enabled:=false;
if copy(str,4,1)='1' then
main.MainMenu1.Items.Items[0].Items[5].Enabled:=true else
main.MainMenu1.Items.Items[0].Items[5].Enabled:=false;
if copy(str,5,1)='1' then
main.MainMenu1.Items.Items[1].Items[1].Enabled:=true else
main.MainMenu1.Items.Items[1].Items[1].Enabled:=false;
if copy(str,6,1)='1' then
main.MainMenu1.Items.Items[1].Items[2].Enabled:=true else
main.MainMenu1.Items.Items[1].Items[2].Enabled:=false;
if copy(str,7,1)='1' then
main.MainMenu1.Items.Items[1].Items[4].Enabled:=true else
main.MainMenu1.Items.Items[1].Items[4].Enabled:=false;
{if copy(str,8,1)='1' then
main.MainMenu1.Items.Items[1].Items[5].Enabled:=true else
main.MainMenu1.Items.Items[1].Items[5].Enabled:=false;
if copy(str,9,1)='1' then
begin
main.MainMenu1.Items.Items[2].Items[1].Enabled:=true;
main.MainMenu1.Items.Items[2].Items[2].Enabled:=true;
end
else
begin
main.MainMenu1.Items.Items[2].Items[1].Enabled:=false;
main.MainMenu1.Items.Items[2].Items[2].Enabled:=false;
end;
if copy(str,10,1)='1' then
main.MainMenu1.Items.Items[3].Items[1].Enabled:=true else
main.MainMenu1.Items.Items[3].Items[1].Enabled:=false;
if copy(str,11,1)='1' then
main.MainMenu1.Items.Items[3].Items[2].Enabled:=true else
main.MainMenu1.Items.Items[3].Items[2].Enabled:=false;
if copy(str,12,1)='1' then
main.MainMenu1.Items.Items[3].Items[3].Enabled:=true else
main.MainMenu1.Items.Items[3].Items[3].Enabled:=false;
if copy(str,13,1)='1' then
main.MainMenu1.Items.Items[3].Items[4].Enabled:=true else
main.MainMenu1.Items.Items[3].Items[4].Enabled:=false;
if copy(str,14,1)='1' then
main.MainMenu1.Items.Items[3].Items[6].Enabled:=true else
main.MainMenu1.Items.Items[3].Items[6].Enabled:=false;
if copy(str,15,1)='1' then
main.MainMenu1.Items.Items[3].Items[7].Enabled:=true else
main.MainMenu1.Items.Items[3].Items[7].Enabled:=false;
if copy(str,16,1)='1' then
main.MainMenu1.Items.Items[4].Items[1].Enabled:=true else
main.MainMenu1.Items.Items[4].Items[1].Enabled:=false;
if copy(str,17,1)='1' then
main.MainMenu1.Items.Items[4].Items[2].Enabled:=true else
main.MainMenu1.Items.Items[4].Items[2].Enabled:=false; }end;这是一个权限控制函数,不知道怎么回事,传来的参数有有18位啊
procedure TForm1.Button3Click(Sender: TObject);
var
s:string;
begin
s:='abcd';
showmessage(s[1]);
end;
数组的引用通过定义的下标来的
procedure TForm1.Button3Click(Sender: TObject);
var
arr:array[1..8] of char; //可以用arr[1]到arr[8]但不能用arr[0]因为下标为1到8
//若换为arr:array[0..7] of char; 可以用arr[0]到arr[7]因为下标为1到8