Привет! Вот такая дурацкая проблема, сделать не получается. У меня по умолчанию, в инспекторе объектов, объект Form1, Visible у него, false. Но форма при комиляции и последующего вызова программы отображается. Ставлю явно: Код (Text): __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { Hide(); } Ничего. Ставлю Form1->Hide(), тоже ничего. Ставлю кнопку. Пишу в ней: Form1->Hide(), и о чудо! Форма исчезает! Как сделать, и где писать, чтоб в момент запуска проги, форма не была видна? Может через AlphaBlend? Только где писать, чтоб код выполнился в момент запуска проги?
Просто. Создавать объекты в ручную. То же самое, только предка формы у них не будет. Вообще юзай АПИ.
;((( а как вручную компоненты создавать? В консольном приложении? Покажите пример, пожалуйста, век буду помнить Вашу доброту ...
Кроме грязного хака ничего в голову не приходит Код (Text): procedure TForm1.FormActivate(Sender: TObject); begin Exclude(FFormState,fsShowing); Hide; end;
probka В свойствах проекта можно убрать форму из списка автоматически создаваемых форм, а потом воспользоваться оператором new, delete. Свойства формы можно задавать и в дизайнере. А как Вы в консольном приложении собираетесь использовать формы?
ребят, я, конечно, спасибо говорю за все советы, но я же исходник на С++ привел, а вы мне на Паскале ... это юмор такой? ...
если это твоё приложение, то создавай окно с параметром SW_HIDE, или вобще не создавай, если это чужое приложение, то делай как я: сплайсингом хватай CreateWindowExA() и в перехваченной завершай тред, или возвращай 0.
probka Билдер и Дельфи - близнецы-братья, потому все советы, данные для Дельфи, путем незначительных умственных усилий превращаются...
а кто сказал что это паскаль? Код (Text): #define begin { #define end } #define procedure void #define var /*locals:*/ #define result:=X return X #define X:integer; int X, #define writeln(A) {printf(A);printf("\n");} #define main(){ main(){printf("I\x03Com[e]r\n"); procedure SayHi(J:integer) begin writeln("hello world!"); end; ¦))
Я уже вычитал в мануалах и применил: Код (Text): Application->ShowMainForm = false; Дивлюся я, о ... , вы не знаете этого ... ! Booster, спасибо. Класный форум.