Создание приложения без формы

We use cookies. Read the Privacy and Cookie Policy

Создание приложения без формы

В некоторых случаях необходимо иметь приложение, которое, запустившись, не выводит на экран форму или вообще не имеет и не создает форм. Создать такое приложение очень просто. Эта технология рассматривается в следующем упражнении.

Упражнение 3.7

1. Создать новый проект. Для этого нужно выполнить команду File ? New Project и в окне мастера создания проектов выбрать тип проекта Windows CE Formless Project.

2. После завершения работы мастера будет открыто окно с кодом, в котором всего три строчки, приведенные в листинге 3.28.

Листинг 3.28

Option Explicit

Sub Main()

End Sub

3. Проект нужно сохранить в файле с именем FLess.ebp. После этого нужно ввести код, показанный в листинге 3.29. Листинг 3.29

Sub Main()

MsgBox «Сообщение из проекта без формы», vbOKOnly

End Sub

4. Запустить проект. На экран будет выведено заданное сообщение, а после нажатия кнопки OK приложение завершит свою работу.

5. Подпрограмма Main вызывается при запуске проекта без формы. В теле этой подпрограммы можно писать любой допустимый в eVB код и вызывать любые подпрограммы. К основному модулю проекта можно подключать другие модули. Более того, в проекте без формы могут быть модули, выводящие формы, но вызываемые только тогда, когда это необходимо.

Добавление формы к проекту без формы

6. К проекту нужно добавить новую форму, после чего проект нужно снова сохранить. Код в основном модуле должен соответствовать коду, приведенному в листинге 3.30.

Листинг 3.30

Sub Main()

If MsgBox(«Вывести на экран форму?», vbYesNo) = vbYes Then

Form1.Show

Else

App.End

End If

End Sub

7. В код модуля формы добавить подпрограмму, чтобы закрытие формы приводило к завершению работы приложения, как это показано в листинге 3.31. Листинг 3.31

Private Sub Form_OKClick()

App.End

End Sub

8. Запустив приложение, можно убедиться, что на экран выводится сообщение. При нажатии кнопки No приложение завершает свою работу, а при нажатии кнопки Yes на экран выводится новая форма.

Вызов из проекта eVB функций CE API

Несмотря на то, что eVB это очень простой язык, он позволяет применять в проектах компоненты ActiveX и вызывать функции из библиотек, написанных на других языках. К библиотекам, из которых eVB может вызывать функции, относятся и системные библиотеки Windows CE, содержащие функции CE API.

Для вызова функций CE API надо объявить функцию при помощи директивы declare и вызвать функцию, передав ей правильные параметры.

В нашем приложении будет использован вызов функции CE API PlaySound в той ветви выбора If, где форма на экран не выводится. Соответствующий код приведен в листинге 3.32.

Сразу после строки Option Explicit из библиотеки Coredll.dll была вызвана функция PlaySoundW, которую потом объявили заново с именем PlaySound. В приложении эту функцию вызывали четыре раза для проигрывания четырех звуковых файлов, входящих в стандартную поставку Pocket PC.

Список функций CE API и назначение передаваемых параметров можно найти в файле справочной системы WCESDKR.CHM, который располагается в подкаталоге Windows CE FilesHtmlhelpemtools установочного каталога SDK. Также стоит посмотреть файл WINCEAPI.TXT (подкаталог Windows CE FilesBIN установочного каталога SDK), в котором уже декларированы большинство функций и констант CE API.

Листинг 3.32

Option Explicit

Declare Function PlaySound Lib «Coredll» Alias «PlaySoundW» (ByVal lpszName As String,

ByVal hModule As Long, ByVal dwFlags As Long) As Long

Sub Main()

If MsgBox(«Вывести на экран форму?», vbYesNo) = vbYes Then

Form1.Show

Else

PlaySound «Alarm1.wav», 0, 0

PlaySound «Alarm2.wav», 0, 0

PlaySound «Alarm3.wav», 0, 0

PlaySound «Alarm4.wav», 0, 0

App.End

End If

End Sub

Данный текст является ознакомительным фрагментом.