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

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

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

Восстановить пароль

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 24.11.2009, 12:59   #1
Skydream
Пользователь
 
Регистрация: 14.08.2009
Сообщений: 14
По умолчанию Работа с формой

Пару проблем возникло, не могу решить:
- не работает свойство формы Visible(стоит False), в итоге форма всеравно видна;
- не закрывается форма:
процедура создания формы(эвент который)
переменные
бегин
какие-то действия
форм1.клоуз
энд.

Ну и еще пару вопросов:
1. Если закрытие формы в том случае не поможет, то мне тогда нужно консольное приложение. Вопрос: как его скрыть?
2. Как получить текущие аргументы у работающего приложения-проекта(аргументы задет и запускает другое приложение)?
Skydream вне форума
Старый 24.11.2009, 13:06   #2
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

Цитата:
не работает свойство формы Visible
form.hide, form.show
Цитата:
Если закрытие формы в том случае не поможет, то мне тогда нужно консольное приложение. Вопрос: как его скрыть?
form.showmainform:= false, если консольное и форму создаете, то измените режим создания формы, если нет формы, его и так не видно, только в процессах... или вам нужно и чтоб там не было?
Цитата:
Как получить текущие аргументы у работающего приложения-проекта
Код:
paramstr(0 и так далее)
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума
Старый 24.11.2009, 13:16   #3
Skydream
Пользователь
 
Регистрация: 14.08.2009
Сообщений: 14
По умолчанию

Цитата:
Сообщение от raxp Посмотреть сообщение
form.hide, form.show
Не работает.
Цитата:
Сообщение от raxp Посмотреть сообщение
form.showmainform:= false, если консольное и форму создаете, то измените режим создания формы, если нет формы, его и так не видно, только в процессах... или вам нужно и чтоб там не было?
Под консольным имелось ввиду программа в виде командной строки(как в Паскале), вопрос был как его скрыть, т.е. что бы пользователь её не видел.
За paramstr() спасибо, приеду проверю.
Skydream вне форума
Старый 24.11.2009, 13:17   #4
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

Цитата:
Не работает.
код в студию
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума
Старый 24.11.2009, 14:04   #5
russian-stalker
Участник клубаДжуниор
 
Аватар для russian-stalker
 
Регистрация: 23.08.2008
Сообщений: 1,616
По умолчанию

Цитата:
Сообщение от raxp Посмотреть сообщение
Код:
paramstr(0 и так далее)
Только надо брать начиная с первого, а то нулевой параметр-полный путь до файла
pushl $0x18E3DF6B
call ICQ
russian-stalker вне форума
Старый 24.11.2009, 14:23   #6
FaTaL
Участник клуба
 
Аватар для FaTaL
 
Регистрация: 09.11.2007
Сообщений: 1,762
По умолчанию

Цитата:
Сообщение от Skydream Посмотреть сообщение
Не работает.

Под консольным имелось ввиду программа в виде командной строки(как в Паскале), вопрос был как его скрыть, т.е. что бы пользователь её не видел.
За paramstr() спасибо, приеду проверю.
Чтобы не видно было окна. Просто удалите форму с проекта и пишите свой код в View Source
FaTaL вне форума
Старый 24.11.2009, 14:38   #7
Neeter
Форумчанин
 
Аватар для Neeter
 
Регистрация: 22.02.2009
Сообщений: 875
По умолчанию

Цитата:
не работает свойство формы Visible(стоит False), в итоге форма всеравно видна;
Вы что ли в инспекторе объектов присваиваете visible? При включении программы все visible присваиваются автоматически в true (что можно изменить в Project Source)
raxp уже сказал способы, если они у вас не получаются, то вы их не правильно применяете.
Вот еще вариант: ShowWindow(Handle, SW_HIDE);

Цитата:
процедура создания формы(эвент который)
переменные
бегин
какие-то действия
форм1.клоуз
энд.
Интересно вы код оформляете...
По вопросу: после создания формы в коде проекта стоит строчка показа формы, так что, если вы пробуете скрыть форму при создании, то она все равно появляется. Перенесите код в onShow формы.
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство.
Neeter вне форума
Старый 24.11.2009, 20:27   #8
Skydream
Пользователь
 
Регистрация: 14.08.2009
Сообщений: 14
По умолчанию

Цитата:
Вы что ли в инспекторе объектов присваиваете visible?
Да, о переприсвоении не знал, но я так же писал form.hide и form.visible = false в событии создания формы(onCreate).
А насчет OnShow: "Cannot change Visible in OnShow or OnHide".
Цитата:
код в студию
Код:
procedure TForm1.FormCreate(Sender: TObject);
var
 ...
begin
  Form1.Visible := False;
 ...
  Form1.Close;
end;
И визибл и клоуз не работают, ну про визибл - понял...
Цитата:
Чтобы не видно было окна. Просто удалите форму с проекта и пишите свой код в View Source
Это как? Она просто так не удаляется, поэтому и был вариант писать на консоле(правда вот незнаю как её скрыть от пользователя), вспомнил что формы скрывать можно, по-крайней мере в PascalABC я так и сделал, но что-то тут никак...
Skydream вне форума
Старый 24.11.2009, 21:02   #9
Marsel737
Форумчанин
 
Аватар для Marsel737
 
Регистрация: 09.11.2009
Сообщений: 669
По умолчанию

Skydream, в топку консольное приложение, просто на форм креэйте пропиши:

Код:
Application.ShowMainForm:=false;
И будет тебе счастье!
Я не всегда знаю, о чем говорю, но знаю, что прав. © Мухаммед Али.
К чёрту обстоятельства. Я создаю возможности. © Брюс Ли
Marsel737 вне форума
Старый 24.11.2009, 21:15   #10
raxp
Старожил
 
Регистрация: 29.09.2009
Сообщений: 9,713
По умолчанию

вот тут напишите
Код:
procedure TForm1.FormCreate(Sender: TObject);
begin
 application.ShowMainForm:= false;
 //ShowWindow(Handle, SW_HIDE); //или так
end;
Цитата:
Она просто так не удаляется, поэтому и был вариант писать на консоле
можете просто скопировать любой dpr и писать в нем, вот и будет консоль... если уж собрались писать на api, то можно форму создавать скрытую
Код:
Handle:= CreateWindowEx(WS_EX_WINDOWEDGE, WinTitle, 'API', WS_MINIMIZE, integer(CW_USEDEFAULT), integer(CW_USEDEFAULT), 0, 0, 0, 0, hInstance, nil)
а можно и вообще не создавать (все зависит от вашей задачи), тогда ничего и не появится, нечему появлятся.
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation
raxp вне форума
Закрытая тема


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с формой. S_Yevgeniy Общие вопросы Delphi 12 13.10.2009 21:23
Помогите с формой IgorBol Microsoft Office Access 3 07.10.2009 11:22
Работа с формой! Lemo Помощь студентам 25 16.01.2009 11:49
Работа с формой dolphin705 Общие вопросы Delphi 5 23.08.2008 12:59
Работа с формой SunKnight Общие вопросы Delphi 4 17.01.2008 09:13