Я так понимаю, что у Вас есть "массив" из 20 элементов, который нужно сформировать (перемешать) в произвольном порядке. Так?
Я для похожих целей пользуюсь следующим:
var
a: array [0 .. 19] of Integer;
i, j, k: Integer;
begin
//Заполняем начальными данными
for i := Low(a) to High(a) do
a[i] := i;
//Перемешиваем
for i := High(a) downto 1 do
begin
j := Random(i - 1);
if i <> j then
begin //Меняем местами элементы
k := a[j];
a[j] := a[i];
a[i] := k;
end;
end;
end;
Используйте MessageDlg.
На андроиде немного инная реализация, требующая добавления асинхронной процедуры обрабоки результатов, полученных от MessageDlg.
Будет что-то вроде:
MessageDlg('Удалить выбранный файл?', TMsgDlgType.mtConfirmation, mbYesNo, 0, procedure (const AResult: TModalResult) begin
if (AResult=mrYes) then begin
{тут обрабатываете результат нажатия кнопки "Yes"}
end;
end);