delphi程序调试。

来源:百度知道 编辑:UC知道 时间:2024/05/25 03:54:30
谁能帮我挑试一下这个小程序?
在文本框中输入几个元音字母,然后判断是不是全市元音。
procedure TForm1.Button1Click(Sender: TObject);
type
Tvowels=set of char;
var
Vowels:Tvowels;
i:integer;
begin
Vowels:=['a','e','i','o','u','A','E','I','O','U'];
for i:=1 to edit1.GetTextLen do
begin
if edit1.text[i] in Vowels then
label2.Caption :='恭喜你,你所输入的都是元音。'
else
label2.Caption :='Sigh,对不起,请再试...' ;
end;
end;
为什么我调试的时候,光标总向下移动呢? 无法运行阿。

这样能运行吗?逻辑上也不对啊
给你一个思路吧:
写一个函数(function CheckWoels(str:String):Boolean;),用来判断str是否全是元音字母
function CheckWoels(str:String):Boolean;
begin
Result:=True;
//将str分解,逐个与Vowels比较
for i:=0 to length(str) do
begin
if not str.substring(i,1) in Vowels then
begin
Result:=False;
Break;
end;
end;
end;

然后在Button的事件中调用此函数,例如:CheckWoels(edit1.text)如果返回值为真,则全是元音;否则,就有不是元音的。(有一段时间没写Delphi了,语法不一定全正确,只是说一个思想;另外lz如果刚学习编程,那么最好加强一下程序的模块化,不要都写在一起,不是好习惯)