Форум программистов
 
О проблемах, например, с регистрацией пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail, а тут можно восстановить пароль.

Вернуться   Форум программистов > Delphi > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Ответ
 
Опции темы
Старый 02.12.2019, 22:04   #1
ProMKQ
Пользователь
 
Регистрация: 10.11.2019
Сообщений: 13
По умолчанию Несколько Showmessage

Может вопрос и глупый, но как активировать Showmessage сразу несколько раз? Я имею ввиду как заставить програму показать несколько диалоговых окон на екране?
ProMKQ вне форума Ответить с цитированием
Старый 02.12.2019, 22:18   #2
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 14,762
По умолчанию

А ваш вопрос к какому языку относится?
Arigato на форуме Ответить с цитированием
Старый 02.12.2019, 22:30   #3
ProMKQ
Пользователь
 
Регистрация: 10.11.2019
Сообщений: 13
По умолчанию

Free Pascal
ProMKQ вне форума Ответить с цитированием
Старый 02.12.2019, 23:47   #4
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 14,762
По умолчанию

В Lazarus?
Arigato на форуме Ответить с цитированием
Старый 02.12.2019, 23:52   #5
ProMKQ
Пользователь
 
Регистрация: 10.11.2019
Сообщений: 13
По умолчанию

Да, именно
ProMKQ вне форума Ответить с цитированием
Старый 03.12.2019, 01:52   #6
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 14,762
По умолчанию

Можно в потоках выводить сообщения. Добавляем класс потока:
Код:
  TMessageThread = class(TThread)
  private
    FMessage: string;
  protected
    procedure Execute; override;
  public
    property Message: string write FMessage;
  end;

var
  Form1: TForm1;

implementation

procedure TMessageThread.Execute;
begin
  ShowMessage(FMessage);
end;
И, к примеру, на нажатие кнопки:
Код:
procedure TForm1.Button1Click(Sender: TObject);
const
  MessageCount = 5;
  Messages: array[1..MessageCount] of string =
    (
     'Сообщение 1',
     'Сообщение 2',
     'Сообщение 3',
     'Сообщение 4',
     'Сообщение 5'
    );
var
  i: Integer;
  Threads: array[1..MessageCount] of TMessageThread;
begin
  for i := 1 to MessageCount do begin
    Threads[i] := TMessageThread.Create(True);
    Threads[i].FreeOnTerminate := True;
    Threads[i].Message := Messages[i];
    Threads[i].Resume;
  end;
end;
Arigato на форуме Ответить с цитированием
Старый 03.12.2019, 21:17   #7
ProMKQ
Пользователь
 
Регистрация: 10.11.2019
Сообщений: 13
По умолчанию

Спасибо!
ProMKQ вне форума Ответить с цитированием
Ответ

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ShowMessage rAMEO БД в Delphi 9 11.12.2014 13:31
ShowMessage serj-07 Общие вопросы Delphi 2 11.03.2014 13:20
ShowMessage kort95 Общие вопросы Delphi 4 14.12.2013 16:47
ShowMessage lu_una Общие вопросы Delphi 5 04.12.2012 08:14
ShowMessage krikaved Общие вопросы Delphi 6 19.03.2010 04:19


Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru
Пеллетный котёл Emtas
котлы EMTAS