Сховати головну форму
Шановні майстри! Не повірите – не знав, але забув. Як заховати головну форму програми? У сенсі не показувати на екрані/моніторі :) Пам'ятаю, що то було про апішне ShowWindow або якось так. Підкажіть, хто що може. Підкажіть, люди добрі.
Ну оскільки зазвичай: Form1.Hide , чи Form1.Visible := False . Якщо через ShowWindow тоді так: ShowWindow(Form1.Handle, SW_HIDE)
Хм. Класно, звичайно. Але чи не здаюся я чайником, якщо спитаю, куди прописувати наведений вище код? Найбільш підходящий результат дав рядок Application.ShowMainForm: = False, вставлена в dpr, але при цьому відсутня так само кнопуліну в ТаскБарі. А Form1.Visible: = false; і так за умовчанням стоїть. Пам'ятається, що ShowWindow(Form1.Handle, SW_HIDE) допомагав вирішити питання, але я таки забув, як його юзати для TForm. На скільки я пам'ятаю, треба перекрити якийсь її метод і в цьому методі зробити відповідний виклик. Але який метод. ЗИЖ Що означає втратити бібліотеку коду. А взагалі, якщо раптом не дай бог хто ще не знає - http://www.gexperts.org/ і http://www.gexperts.org/files/CodeLibDB.zip - дуже корисна весч :)
мля. тобі її мінімізувати треба чи що? Application.Minimize
Мля! Не треба мені її мінімізувати! Якщо цікаво - завдання наступне: Потрібно показати збережений FastReport. Формочку з війновим прев'ю і т.д. малювати оболом, тож хочу показати рідну форму FastReport. У неконсольної програми за визначенням є головна форма, але вона в даному випадку смислового навантаження не несе і показувати її не треба, а треба відразу показати або діалог з вибором збереженого звіту (файлу), або форму FastReport, якщо файл збереженого звіту передано в командному рядку . І як мені приховати сакраментальну Form1 у своїй? Можна, звичайно, її і неховати, але у юзверів можуть виникнути питання.
ти хочеш, щоб кнока на таскбарі залишилася чи ні?
> ти хочеш, щоб кнока на таскбарі залишилася чи ні? Аг, дуже хочеться її там бачити :) > ShowMainForm тобі не підійшов тому, що кнопка на таск барі залишилася так? Не підійшов саме тому, що кнопки на ТаскБарі немає. > ShowWindow(Application.handle,SW_HIDE) у тебе не працює, так? Де його викликати? Дуже схоже, що я пам'ятаю, але забув, де його вставляти. у хорошому значенні слова. :)
але ShowWindow(Application.handle,SW_HIDE) це і є приховування кнопки з таскбар.
а те, що ти хочеш, називається Application.Minimize
> а те, що ти хочеш, називається Application.Minimize Хм. Ну не хочу я мінімізувати програму. Вибачте, звичайно, за криву мову викладу питань. Ок. Простий приклад: У додатку є дві форми: Form1 і Form2. Form1 – головна форма програми. При старті софтинки я хочу наступного: Form1 взагалі на моніторі не видно. У певному її методі, OnCreate наприклад, створюється і показується Form2, яка на відміну від Form1 на моніторі видно. У ТаскБарі кнопка програми є. Що порадите?
> showwindow(form1.handle,SW_SHOWMINIMIZED)Тут, пардон, потрібно SW_MINIMIZE
Колеги! Величезне вам людське Мерсі за участь! Але! Мінімізувати форму/додаток мені НЕ ТРЕБА. Мені треба СХОВАТИ ГОЛОВНУ ФОРМУ ДОДАТКА/НЕ ПОКАЗУВАТИ ЇЇ ГЛУПОМУ ЮЗВЕРЮ.
Що означає кілька годин здорового міцного сну! :) Ось що мені треба було: =========================== procedure TForm1.FormCreate(Sender : TObject); begin Left: = -1000; Top: = -1000; end; =========================== Всім дякую.
А щеможна так: Забираємо заголовок і всі стемні кнопки з форми і далі Form1.onCreate(. ); begin width:=1; height:=1; top:=-1: left:=-1; end;
Маячня. Мінімізована в таскбарі форма нічим від прихованої форми з показаною кнопкою в таскбарі не відрізняється.
>Мінімізована в таскбарі форма нічим від прихованої форми з показаною кнопкою в таскбарі не відрізняється.
Відрізняється хоча б тим, що якщо у мінімізованої кнопки в таскбарі ткнути - форма відкриється, а заховану тикай, не тикай - вона і в Африці захована :)