Форум: "Начинающим";
Текущий архив: 2014.07.13;
Скачать: [xml.tar.bz2];
ВнизКАК ЗАДАТЬ РАНДОМ И ВЫВЕСТИ В ЛЭЙБЛ? Найти похожие ветки
← →
Сергей (2013-09-09 13:44) [0]Ребята, у меня есть 4 радиобаттона в моей программе, при нажатии на битбтн (в совокупности с одной из радиокнопок) должно выдаваться рандомное текстовое значение в лэйбл. Для каждого радиобаттона есть 4 варианта рандомного текста. Как осуществить то, чтобы каждый раз, при повторных нажатиях (при одном радиобаттоне) в лэйбл каждый раз выводилось рандомное значение, прошу помочь мне! Заранее очень благодарен
← →
Плохиш © (2013-09-09 13:54) [1]ЛЭЙБЛ
.Text :=
<4 варианта рандомного текста>[Random(4)];
← →
Wadimka (2013-09-09 14:03) [2]ну конкретно задача, сколько текстовых сообщений в каждом радиобанное, если не много то можно массив сделать
допустим
uses math;
var
ArrayStr:array[1..4] of array[1..5] of String;
begin
//n - max = 5
ArrayStr[1][1]:="Строка 1 для RadioBut1";
ArrayStr[1][2]:="Строка 2 для RadioBut1";
ArrayStr[1][n]:="Строка n для RadioBut1";
ArrayStr[2][1]:="Строка 1 для RadioBut2";
и т.д.
if Radiobut1.checked then label1.caption:=ArrayStr[1][RandomRange(1, 5)];
if Radiobut2.checked then label1.caption:=ArrayStr[2][RandomRange(1, 5)];
и т.д.
Если текста много, то лучше использовать TStringList вместо массива
end;
← →
[ВладОшин] © (2013-09-09 14:05) [3]type
TForm1 = class(TForm)
RadioButton1: TRadioButton;
RadioButton2: TRadioButton;
RadioButton3: TRadioButton;
RadioButton4: TRadioButton;
BitBtn1: TBitBtn;
procedure BitBtn1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private { Private declarations }
public { Public declarations }
A: array[0..3, 0..3] of string;
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.BitBtn1Click(Sender: TObject);
var
i: integer;
R: TRadioButton;
begin
for i := 0 to ComponentCount - 1 do
begin
if Components[i] is TRadioButton then
begin
R := TRadioButton(Components[i]);
if R.Checked then
Caption := A[R.tag][Random(4)];
end;
end;
end;
procedure TForm1.FormCreate(Sender: TObject);
var
i, j: Integer;
R: TRadioButton;
begin
for i := 0 to ComponentCount - 1 do
begin
if Components[i] is TRadioButton then
begin
R := TRadioButton(Components[i]);
R.tag := StrToInt(Copy(R.Name, Length(R.ClassName), Length(R.Name)));
end;
end;
for i := 0 to 3 do
for j := 0 to 3 do
A[i][j] := Format("RadioButton%d Value%d",[i,j]);
end;
← →
[ВладОшин] © (2013-09-09 14:23) [4]array[1..4, 0..3] :)
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2014.07.13;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.002 c