|
|
|
Main
|
|||
|---|---|---|---|
|
#18+
_Screen.Visible= .F. PUBLIC nForm IF Type ("_VFP.Forms('parol')")="U" DO FORM c:\MyPrj\parol.scx NAME nForm linked READ EVENTS ENDIFNo okazivaetsiya zapusk formu neskolko raz.Chto delat? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2005, 20:22:14 |
|
||
|
Main
|
|||
|---|---|---|---|
|
#18+
READ EVENTS - убирать пробовал? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2005, 20:25:05 |
|
||
|
Main
|
|||
|---|---|---|---|
|
#18+
A bez Read Events forma ne budet zaqruzitsiya.(eqo ne budet vidno) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2005, 20:41:22 |
|
||
|
Main
|
|||
|---|---|---|---|
|
#18+
DO FORM c:\MyPrj\parol.scx NAME nForm linked NOREAD пробуй ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2005, 20:47:03 |
|
||
|
Main
|
|||
|---|---|---|---|
|
#18+
Poprobibal ne poluchilois. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2005, 20:53:26 |
|
||
|
Main
|
|||
|---|---|---|---|
|
#18+
ya zdelal parol.scx, eto qlavnaya vxod v bazu.No ya xochu chto koqda Click zdelayu na ikonku forma parol.scx zaqruzilsiya tolko 1 raz.Vnutri proqrammi etot kod srabotaet.No a v qlavnom proqramme ne rabotaet.Vot i vsyo ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2005, 21:25:16 |
|
||
|
Main
|
|||
|---|---|---|---|
|
#18+
Вобщем. тебе надо прописать так _Screen.Visible= .T. *PUBLIC nForm IF Type ("_VFP.Forms('parol')")="U" DO FORM c:\MyPrj\parol.scx ENDIF READ EVENTS ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2005, 21:28:33 |
|
||
|
Main
|
|||
|---|---|---|---|
|
#18+
Net brat proqramirovanie eto ne uqadayka.Ne podxodit prodiotsiya jdat Vladimira Maksimova.Sposibo za pomosh. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2005, 22:10:12 |
|
||
|
Main
|
|||
|---|---|---|---|
|
#18+
Я усебя так делал и все похало! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2005, 22:11:53 |
|
||
|
Main
|
|||
|---|---|---|---|
|
#18+
U menya ne rabotaet.Forma Zapuskaetsiya eshyo raz.I stati ya ne xochu rabotat _Screen.visable = .T. Eto ne dlya menya. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2005, 22:15:49 |
|
||
|
Main
|
|||
|---|---|---|---|
|
#18+
Vobshe to tvoe podxod k temam mne nravitsiya.Ochen aktiven v forume. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2005, 22:19:36 |
|
||
|
Main
|
|||
|---|---|---|---|
|
#18+
Ну, сначала разберем, что именно делает твой код Код: plaintext 1. 2. 3. 4. 5. 6. 7. Я так понимаю, что форма пароля - это As Top-Level форма (иначе нет смысла в _Screen.Visible= .F.). FoxPro выполняет код последовательно. Сверху вниз. Теперь смотрим, что мы имеем. Объявили глобальную переменную nForm Проверяем, существует ли форма со свойством Name='parol'. При самом первом запуске ее разумеется нет. Переходим на оператор ENDIF и завершаем программу Почему это работало в режиме отладки? Ну, ты, видимо, заранее запустил где-то форму пароля. Т.е. ДО вызова главной проги форма уже существовала. Теперь, как этот код надо подправить, чтобы он заработал. А очень просто: Код: plaintext 1. 2. 3. ВСЕ! Все остальное - лишнее. Как эта штука будет работать: При открытии программы, запускаем форму пароля. Если пароль неверен, то при закрытии формы даем команду CLEAR EVENTS. Если пароль верен, то просто закрываем форму без вопросов. Команда READ EVENTS будет "держать" приложение в открытом состоянии. Если у тебя все приложение строится на базе As Top-Level форм и форма пароля - это главная форма, то сделай на этой форме глобальный PageFrame из 2 закладок (сами закладки спрячь PageFrame.Tabs = .F.). На первой - ввод пароля, на второй основное меню приложения. Если пароль введен правильно, то просто открываешь вторую закладку, если неверно, то закрываешь форму. Если основная форма - это другая форма (НЕ форма пароля), то можно сделать так: Код: plaintext 1. 2. 3. 4. Первая форма активизируется только если пароль правильный (в самой форме пароля). Или вообще вызывать ее при выходе из формы пароля. Поскольку формы As Top-Level по определению не могут быть модальными, то "подвисание" формы пароля при этом не произойдет. PS: Приложения на базе As Top-Level форм практически ничем не отличаются от приложений, построенных в основном окне FoxPro. Разница лишь в том, что приходится самостоятельно проектировать основное окно приложения. Т.е. программно - это сложнее. Суть та же самая. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2005, 22:54:55 |
|
||
|
Main
|
|||
|---|---|---|---|
|
#18+
A ya dumal vi zavtra otvetite.Oto vsyo ok Vladimir.Osobenno pro PageFrame.Tabs = .F No zadacha v tom chto koqda kliknu znashok naprimer parol.exe zapuskaetsiya forma.Net problema.A koda snova kliknu eshyo raz zapuskaetsiya forma, i ya imeyu uje 2 otkritoqo parol.exe.Ya xochu chto parol.exe zapuskalsiya tolko odin raz za odnoqo click - a. Esli parol pravilniy zapuskalsiya druqoe forma ,esli net toqda set focus txtperol i dalshe.. Spasibo ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2005, 23:11:32 |
|
||
|
Main
|
|||
|---|---|---|---|
|
#18+
Речь идет о предотвращении повторного открытия одного и того же приложения? Т.е. одновременно на одной машине нельзя запустить 2 копии одного и того же приожения? Так в пределах одной среды FoxPro это не решается. Каждый запуск parol.exe вызовет открытие новой (независимой) среды FoxPro. Каждая из них просто ничего не знает про другую. Тут нужны способы, опирающиеся на внешние (по отношению к текущей среде FoxPro) процессы или объекты. Простейшее решение - это создать на клиенте служебную таблицу и при открытии приложения пытаться ее блокировать. Удалось - работаем дальше, не удалось - есть открытое приложение, переключаемся на него и закрываем текущее приложение. Можно записать в эту таблицу имя главной формы приложения (или лучше хендл этой формы) и по ней сделать переключение через API-функции. FoxPro может читать и заблокированные записи. Главное, чтобы служебная таблица была открыта в режиме Shared. Вообще-то, сделай поиск по данному форму по ключевому слову "mutex". Было неоднократное обсуждение подобной проблемы. Кроме того, по ссылке Sergey Ch посмотри его функцию AppAlreadyRunning(). Она как раз и проверяет факт повторного запуска приложения. Правда, фокус на существующее приложение не переводит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.10.2005, 23:33:18 |
|
||
|
Main
|
|||
|---|---|---|---|
|
#18+
Hi Владимир! Да уж, 15 сообщений требуется для того чтобы задать простейший вопрос про повторный запуск :) Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.10.2005, 23:59:42 |
|
||
|
Main
|
|||
|---|---|---|---|
|
#18+
Hi Iqor. Mojet vi obyasnite...... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2005, 14:27:04 |
|
||
|
Main
|
|||
|---|---|---|---|
|
#18+
Hi GrayFox! Коенчно нет! Вообще-то, сделай поиск по данному форму по ключевому слову "mutex". Было неоднократное обсуждение подобной проблемы Если уж вам лень нажать пару кнопок, то мне и подавно неинтересно ваши проблемы решать. Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2005, 05:24:26 |
|
||
|
Main
|
|||
|---|---|---|---|
|
#18+
Net oto ne chesno.Esli vi deystvitelno xotite pomaqat to pomoqite.Esli net ne nato komu to repliku vstavit. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2005, 10:21:27 |
|
||
|
Main
|
|||
|---|---|---|---|
|
#18+
Hi GrayFox! 1) Моё первое сообщение в данной теме было адресовано не вам, в чём легко убедится. Т.е. лично вашей реакции на него я и не ожидал. 2) Я не понимаю чего ещё нужно объяснять, если выше Владимиром был дан исчерпывающий ответ. 3) Как говорится правильно заданный вопрос - это уже половина ответа. Вы же к сожалению на протяжении практически всей ветки задавали неправильный вопрос и соответственно получали на него неправильный ответ. Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.10.2005, 02:00:33 |
|
||
|
|

start [/forum/topic.php?fid=41&gotonew=1&tid=1593157]: |
0ms |
get settings: |
7ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
166ms |
get topic data: |
6ms |
get first new msg: |
4ms |
get forum data: |
2ms |
get page messages: |
33ms |
get tp. blocked users: |
1ms |
| others: | 218ms |
| total: | 450ms |

| 0 / 0 |
