|  | 
 
 | 
| 
 | |||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны | 
|  | 
|  | Опции темы | Поиск в этой теме | Опции просмотра | 
| 
			 
			#31  
			
			
			
			
		 | |||
| 
 | |||
|   Да не нужен мне слип! Мне нало чтобы пользователь сам "сказал" второрй форме закончить работу! Как это сделать?? | 
| 
			 
			#32  
			
			
			
			
		 | |||
| 
 | |||
|   Цитата: 
 Sleep нужен для того, что бы передать ресурсы другому приложению. Обрати внимание на значение, передаваемое в sleep - 0.1 сек. Фактически, это цикл, пока пользователь не чекнет галку. ЗЫ. А если не понимаешь как работает многозадачная операционка, так что лезешь в программирование? | 
| 
			 
			#33  
			
			
			
			
		 | |||
| 
 | |||
|   Может я чего-то и недопонимаю но код : Код:   with TForm2.Create(nil) do
    begin
       Show;
       Update;
       While not CheckBox1.Checked Do sleep(100);
     Free;
    end;Что не так? И как мне сделать чтобы из формы2 можно было выйти стандартно как в любом виндовс приложении. Заранее неизвестно сколько времени йформа2 будет активной, к тому же на форме два будут происходить всякие изменения !... Тоесть форма 2 должнра быть полнофункциональным виндовз приложением! А при использованрии слиип - все приложение зависает! Последний раз редактировалось lostbananan, 21.02.2013 в 22:23. | 
| 
			 
			#34  
			
			
			
			
		 | ||||
| 
 | ||||
|   ShowModal для кого сделан? Объяснять как использовать? | 
| 
			 
			#35  
			
			
			
			
		 | |||
| 
 | |||
|   Т.е вместо show ShowModal использовать? | 
| 
			 
			#36  
			
			
			
			
		 | ||||
| 
 | ||||
|   да и цикл со слипом больше не нужен будет. | 
| 
			 
			#37  
			
			
			
			
		 | |||
| 
 | |||
|   Если использовать такой код: Код: with TForm2.Create(nil) do
    begin
       ShowModal;
       Update;
{       While not CheckBox1.Checked Do sleep(100);}
     Free;
    end;Что и как здесь нетак? | 
| 
			 
			#38  
			
			
			
			
		 | ||||
| 
 | ||||
|   Обратись в раздел "работа", пусть лучше за тебя сделают, у тебя чудеса какие-то творятся, элементарные вещи не реализуются. | 
| 
			 
			#39  
			
			
			
			
		 | |||
| 
 | |||
|   Да нет - я хочу сам написать... Писалд я  на дельи в последний раз лет 10 назад многое подзабыл. Так все ж таки что неправильно в коде? Кто знает что здесь нетак - помогите разобраться! Последний раз редактировалось lostbananan, 21.02.2013 в 22:50. | 
| 
			 
			#40  
			
			
			
			
		 | |||
| 
 | |||
|   Кто-нибудь помогите - подскажите!!!! ПОЖАЛУЙСТА!!! | 
| 
			 
			#41  
			
			
			
			
		 | |||
| 
 | |||
|   В конце-концов если сам не разбирусь или мне никто не подскажет обойду эту проблему так: Код: WinExec('ххх.exe',SW_SHOWNORMAL) | 
| 
			 
			#42  
			
			
			
			
		 | |||
| 
 | |||
|   Цитата: 
 Не, не прокатит, т.к. главная процедура обработки сообщений уже не существует. Тут как раз и проблема, что надо показать интерактивную форму, но уже нет процессора сообщений. Если вариант скрывать главную форму и в ее обработчике OnClose модально показывать свою форму закрытия. В OnClose приложение все еще работает. | 
| 
			 
			#43  
			
			
			
			
		 | ||||
| 
 | ||||
|   Цитата: 
 | 
| 
			 
			#44  
			
			
			
			
		 | |||
| 
 | |||
|   ты наверное меныя неправильно понял. Главное окно закрылось и мне нужно чтобы второе окно - было нормлаьным приложением. ТАк и получилось | 
| 
			 
			#45  
			
			
			
			
		 | ||||
| 
 | ||||
|   Код: program foo;
uses
  forms,
  form1 in '...', 
  form2 in '...';
begin
  with TForm1.create(nil) do
    try
      showmodal;
    finally
      free;
    end;
  with TForm2.create(nil) do
    try
      showmodal;
    finally
      free;
    end;
end.Правда косячить будет при сворачивании окна ибо овнера у окон нет. |