Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

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

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.07.2009, 13:34   #1
Lime
Форумчанин
 
Аватар для Lime
 
Регистрация: 10.02.2009
Сообщений: 815
Вопрос Независимая форма

Доброго времени суток !

Я делаю программу "скринер" . Ничего особенного , но хочется пользоватся для получения скриншотов именно своей программой.

Я хочу сделать опцию "показ результата после скрина" - для этого открывается form3 с картинкой , и в зависимости от размеров скрина я управляю формой ... ( размеры выравнивание итд итп)
Но проблема в том что эта самая форма показывается только в том случае когда видна основная форма form1 которая большинство времени невидимая (программа висит в трее).
В общем вопрос заключается в том : как сделать "самостоятельность" формы3 ? На которой я показываю результат скриншота.
И желательно бы чтобы на панели задач была её кнопка.

//Поиском пользовался , но результата не получил. Тему когдато встречал , но как называется не запомнил , сформулировать правильно запрос тоже не получилось)

Всем Спасибо за отзывы !

Последний раз редактировалось Lime; 05.07.2009 в 13:37.
Lime вне форума Ответить с цитированием
Старый 05.07.2009, 13:42   #2
bill_gates
Ненависник Windows
Пользователь
 
Аватар для bill_gates
 
Регистрация: 04.07.2009
Сообщений: 82
По умолчанию

Я правильно понял, что надо 1-ю форму юзеру не надо показывать, а третью показывать после скриншота.
if Вопрос.Возник then begin if Google.Поиск=false then begin СоздатьТопик; end; end;

if ДругойЮзер.Помог then begin НажатьНаВесы end;
bill_gates вне форума Ответить с цитированием
Старый 05.07.2009, 13:46   #3
Lime
Форумчанин
 
Аватар для Lime
 
Регистрация: 10.02.2009
Сообщений: 815
Стрелка

Цитата:
Сообщение от bill_gates Посмотреть сообщение
Я правильно понял, что надо 1-ю форму юзеру не надо показывать, а третью показывать после скриншота.
Правильно. 1вая - основная форма , используется для основных настроек и выбора режимов. ( однако большинство этих операций можно будет сделать И чарез контекстное меню в трее )
Lime вне форума Ответить с цитированием
Старый 05.07.2009, 13:54   #4
bill_gates
Ненависник Windows
Пользователь
 
Аватар для bill_gates
 
Регистрация: 04.07.2009
Сообщений: 82
По умолчанию

Ну тогда так: Если тебе нужно, чтобы 1-я форма вообще не появлялась, то при создании 1-ой формы (onCreate):

Код:
...
Application.ShowMainForm:=false;
...
А если надо, чтобы появлялась, то можно создать еще форму, сделать ее главной, и при ее создании вписать то что я писал выше.

А когда делаешь скриншот:
Код:
...
Form3.Show;
...
if Вопрос.Возник then begin if Google.Поиск=false then begin СоздатьТопик; end; end;

if ДругойЮзер.Помог then begin НажатьНаВесы end;
bill_gates вне форума Ответить с цитированием
Старый 05.07.2009, 15:35   #5
goblinyara
Форумчанин
 
Аватар для goblinyara
 
Регистрация: 02.01.2009
Сообщений: 340
По умолчанию

можно для Form3 назначить родительской не Form1, а рабочий стол...

Код:
...
private {Это включается в объявления формы.}
  { Private declarations }
  procedure CreateParams(VAR Params: TCreateParams); override;
...

procedure TForm2.CreateParams(VAR Params: TCreateParams);
begin
  Inherited CreateParams(Params);
  Params.WndParent := GetDesktopWindow;
end;
DelphiWorld 6. Скачай, поставь, и будет тебе счастье=)
Программирование, как и любовь -- одно слово, за которым скрывается бесконечное множество занятий.
goblinyara вне форума Ответить с цитированием
Старый 05.07.2009, 15:56   #6
Lime
Форумчанин
 
Аватар для Lime
 
Регистрация: 10.02.2009
Сообщений: 815
Хорошо

Цитата:
Сообщение от bill_gates Посмотреть сообщение
А когда делаешь скриншот:
Код:
...
Form3.Show;
...
Вообщето у меня так и было. Но проблема в том что показывыается 3тья форма только при видимой главной.

Спасибо goblinyara !
Способ понятен , и прекрасно функционирует) Аналогичным образом я могу присвоить родительское окно - любую форму ? Чтобы ( по надобности ) формы путешевствовали вместе ?
Lime вне форума Ответить с цитированием
Старый 05.07.2009, 21:31   #7
goblinyara
Форумчанин
 
Аватар для goblinyara
 
Регистрация: 02.01.2009
Сообщений: 340
По умолчанию

Цитата:
Сообщение от Lime Посмотреть сообщение
Аналогичным образом я могу присвоить родительское окно - любую форму ? Чтобы ( по надобности ) формы путешевствовали вместе ?
ага... просто получите хэндл окна, к которому хотите привязать свою форму, и всё
DelphiWorld 6. Скачай, поставь, и будет тебе счастье=)
Программирование, как и любовь -- одно слово, за которым скрывается бесконечное множество занятий.
goblinyara вне форума Ответить с цитированием
Старый 07.07.2009, 00:39   #8
Lime
Форумчанин
 
Аватар для Lime
 
Регистрация: 10.02.2009
Сообщений: 815
По умолчанию

Цитата:
Сообщение от goblinyara Посмотреть сообщение
ага... просто получите хэндл окна, к которому хотите привязать свою форму, и всё
Хэндл не проблема. Спасибо )
Lime вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
форма Temka Общие вопросы Delphi 2 02.06.2009 18:16
Независимая БД Роман Радер БД в Delphi 6 19.10.2008 22:14
форма blackstersl Общие вопросы Delphi 1 18.09.2008 15:23
форма blackstersl Мультимедиа в Delphi 1 23.08.2008 19:03
форма... Briz Общие вопросы Delphi 8 22.10.2007 17:26