Модераторы: Snowy, MetalFan, bems, Poseidon
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> два процесса в одной программе 
:(
    Опции темы
valerchi
Дата 21.5.2009, 21:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 163
Регистрация: 27.5.2008
Где: Геническ

Репутация: нет
Всего: нет



Здравствуйте. У меня есть задумка, но не знаю как её осуществить. Скажу вкратце. Нужно,чтобы в программе считался замкнутый цикл, с переменной, скажем, "x". И в этой же программе имелась кнопка, по нажатию которой на экран memo выводился результат "x". Но программа после этого продолжала работать и цикл продолжался.....
Результат мне нужен был быстро, поэтому я сделал всё кое-как и как попало....
Я сделал одну программу, на которой считался цикл, и результат записывался в файл.
Потом я запускал ещё одну программу, в которой по нажатию кнопки происходило считывание с файла результата, записанного первой программой. Вот, что я сделал... программа номер один:
Код

x:=0;
repeat

x:=x+1;
if x= 34 then x:=1; 
l: begin
assignfile(f,'d:\числа1.txt');
{$i-}
rewrite(f);
{$I+}
if IOResult <> 0 then
goto l;
writeln(f,inttostr(x));
closefile(f);
end;

until x=592;
end;

А вот программа номер два:
Код

procedure TForm1.Button1Click(Sender: TObject);
var
x:string; y:integer;
var
f: TextFile; // файл
fName: String; // имя файла
buf: String; // буфер для чтения файла
label l;

begin
l: fName:='d:\числа1.txt';
AssignFile(f, fName);
{$i-}
Reset(f); // открыть для чтения
{$I+}
if IOResult <> 0  then
goto l;
// чтение из файла
begin
readln(f, buf); // прочитать строку из файла

CloseFile(f); // закрыть файл
y:=strtoint(buf);
if y=1 then x:='а';
if y=2 then x:='б';
if y=3 then x:='в';
if y=4 then x:='г';
if y=5 then x:='д';
if y=6 then x:='е';
if y=7 then x:='ё';
if y=8 then x:='ж';
if y=9 then x:='з';
if y=10 then x:='и';
if y=11 then x:='й';
if y=12 then x:='к';
if y=13 then x:='л';
if y=14 then x:='м';
if y=15 then x:='н';
if y=16 then x:='о';
if y=17 then x:='п';
if y=18 then x:='р';
if y=19 then x:='с';
if y=20 then x:='т';
if y=21 then x:='у';
if y=22 then x:='ф';
if y=23 then x:='х';
if y=24 then x:='ц';
if y=25 then x:='ч';
if y=26 then x:='ш';
if y=27 then x:='щ';
if y=28 then x:='ъ';
if y=29 then x:='ы';
if y=30 then x:='ь';
if y=31 then x:='э';
if y=32 then x:='ю';
if y=33 then x:='я';
end;

memo1.SelText:= memo1.SelText+x;

end;

end.

PM MAIL   Вверх
AntonN
Дата 21.5.2009, 21:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 491
Регистрация: 8.8.2006

Репутация: 3
Всего: 18



чет как то замутно... сделать tthread с циклом, в нем св-во "флаг", как только флаг true цикл через syncronize() отсылает данные основному потоку.


--------------------
user posted image
PM MAIL WWW   Вверх
valerchi
Дата 22.5.2009, 10:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 163
Регистрация: 27.5.2008
Где: Геническ

Репутация: нет
Всего: нет



Цитата(AntonN @ 21.5.2009,  21:51)
чет как то замутно... сделать tthread с циклом, в нем св-во "флаг", как только флаг true цикл через syncronize() отсылает данные основному потоку.

Дело в том, что я новичок, и такие термины как "tthread" , "поток" и "syncronize()" я не знаю. Напиши, что это за тема в Delphi, то есть, на какой теме в учебнике искать ответ.
PM MAIL   Вверх
CodeMonkey
Дата 22.5.2009, 11:01 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1839
Регистрация: 24.6.2008
Где: Россия, Тверь

Репутация: 29
Всего: 89





--------------------
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Для новичков"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0450 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.