代码

时间:2016-11-23 16:43:32

标签: combobox pascal

我是Pascal的新手,我已经读过一些关于它的东西,但对我来说仍然很难。我想创建一个简单的密码生成器,并调整字符数。

我找到了一个实际为我生成随机密码的函数,即:

function RandomPassword(PLen: Integer): string;
var
str: string;
begin
Randomize;
//string with all possible chars
str    := 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890';
Result := '';
repeat
Result := Result + str[Random(Length(str)) + 1];
until (Length(Result) = PLen)
end;

这是将字符串打印到备忘录的代码:

procedure TForm1.Button2Click(Sender: TObject);
begin
Memo1.Caption := RandomPassword(10);
end; 

我还有一个TComboBox,我想使用组合框中的值来选择字符数(6-32)。在这种情况下,字符数为10,但我想使用Combobox中的值而不是预定数字。谁能帮我?我很感激!

1 个答案:

答案 0 :(得分:0)

您可以选择这样的组合框值:

RandomPassword(StrToInt(ComboBox.Items[ComboBox.ItemIndex]))

ComboBox.ItemIndex返回select combobox item

的索引

ComboBox.Items[]用于选择组合框中的项目。

使用

StrToInt()因为组合框值是一个字符串,你必须将它改为整数