Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Как форму при загрузке сделать активным окном / 7 сообщений из 7, страница 1 из 1
15.09.2004, 17:35
    #32696261
xamlo
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как форму при загрузке сделать активным окном
Вопрос такой. Создаю exeшник, окно _Screen делаю невидимым (на мониторе отображается только форма ). При запуске exeшника запускается эта формочка, но на экране она сразу же отображается как неактивная. Что можно сделать, чтобы она по умолчанию виндой виделась, как активная?
...
Рейтинг: 0 / 0
15.09.2004, 18:17
    #32696374
leaf
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как форму при загрузке сделать активным окном
а никак собственно это официальный глюк
причем доже не фокса а где-то в виндоус
кликайта по форме мышкой
...
Рейтинг: 0 / 0
15.09.2004, 18:27
    #32696384
ВладимирМ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как форму при загрузке сделать активным окном
Попробуй следующие варианты:

1)

Код: plaintext
1.
2.
3.
DO FORM MyForm.scx
MyForm.Visible=.F.
MyForm.Visible=.T.
READ EVENTS

2)

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
DO FORM MyForm.scx
GiveMyFormFocus(MyForm.Caption) 
READ EVENTS

* ----------- Функция активизации As Top-Level формы и вывода ее на передний план 
FUNCTION GiveMyFormFocus(tcWindowCaption) 
local lnHWND 

declare integer FindWindow in Win32API integer, string 
declare integer SetForegroundWindow in Win32API integer 

lnHWND = FindWindow( 0 , tcWindowCaption) 

if lnHWND >  0  
	SetForegroundWindow(lnHWND) 
	return(.T.) 
else 
	return(.F.) 
endif 
ENDFUNC
...
Рейтинг: 0 / 0
15.09.2004, 19:14
    #32696493
ВладимирМ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как форму при загрузке сделать активным окном
И еще посмотри здесь

http://forum.foxclub.ru/read.php?f=5&i=33467&t=33358

И такой вариант

Код: plaintext
1.
2.
3.
DO FORM MyForm.scx
Myform.AlwaysOnTop=.t.
Myform.AlwaysOnTop=.f.
READ EVENTS
...
Рейтинг: 0 / 0
16.09.2004, 09:28
    #32696873
xamlo
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как форму при загрузке сделать активным окном
Впринципе, получаетсчя вот таким образом, если вначале прописать на форме
WindowState = 1. Но все это достаточно некрасиво. Вначале мигает фокспрошное окно (делаясь невидимым), потом снизу, как Титаник,медленно всплывает и сама форма приложения. Но впринципе теперь она активна. Все равно некрасиво.

DO FORM main NAME mainform LINKED
IF TYPE("mainform")="O" AND !ISNULL(mainform)
mainform.WindowState = 0
READ EVENTS
ENDIF
...
Рейтинг: 0 / 0
16.09.2004, 10:10
    #32696958
ВладимирМ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как форму при загрузке сделать активным окном
А по ссылке прочитать, конечно, ломает

Чтобы не всплывало основное окно FoxPro надо в файле конфигурации CONFIG.FPW прописать строчку

SCREEN=OFF

Тогда в головной проге не надо писать _SCREEN.Visible=.F.
...
Рейтинг: 0 / 0
16.09.2004, 10:15
    #32696969
plugh
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как форму при загрузке сделать активным окном
Можно попробовать так:

Function ShowWind

Lparameters windName

Local i

i=1

do while (type(application.forms ) = "O" and !ISNULL(application.forms) = "O"))
if application.forms.name == windName
application.forms.Show()
return(.t.)
endif
i = i+1
skip

return(.F.)
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Как форму при загрузке сделать активным окном / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]