Страница библиотеки Harbour MiniGUI |
Зеркало сайта | Мои программы | Форум MiniGUI | Полезные ссылки | Гостевая книга | О себе |
|
Добрый день, гость!
Эта страница посвящена программированию под Windows на бесплатных компиляторе Harbour и библиотеке MiniGUI. Для того, чтобы начать программировать на Clipper- и FoxPro-подобном языке, необходимо сделать следующее: 1. Скачать бесплатный BCC компилятор по адресу: ftp://ftpd.borland.com/download/bcppbuilder/freecommandLinetools.exe и установить его в папку по умолчанию (C:BORLANDBCC55) 2. Скачать библиотеку MiniGUI (Исходники и бинарники) + бинарники компилятора Harbour (Интегрированная сборка) по адресу: http://hmgextended.com и установить, следуя указаниям инсталлятора. Вот и все, что потребуется для начала! Вверху на странице размещена ссылка на некоторые мои программы, написанные на Harbour и MiniGUI. Эти программы предназначены как для решения повседневных задач, связанных с обслуживанием компьютера, так и для отдыха и развлечения. Скачайте и оцените их! Ваши замечания и предложения я с удовольствием прочту в Гостевой книге, ссылка на которую есть вверху (и снизу) страницы. Также буду рад пообщаться с Вами на форуме MiniGUI! Ниже приведен хорошо документированный пример демонстрационной программы Контакты (главный модуль), которую разработал в учебных целях автор библиотеки MiniGUI Роберто Лопес. Листинг учебной программы Контакты /* * Contactos * (C) 2003 Roberto Lopez roblez@ciudad.com.ar */ /* Файл ''minigui.ch'' должен быть включен во все программы MiniGUI */ #include "minigui.ch" Set Procedure To ContactosAdmin Set Procedure To TiposAdmin Function Main /////////////////////////////////////////////////////////////////////////////// // Инициализация RDD DBFCDX /////////////////////////////////////////////////////////////////////////////// REQUEST DBFCDX RDDSETDEFAULT( "DBFCDX" ) /////////////////////////////////////////////////////////////////////////////// SET DELETED ON SET DATE FRENCH SET CENTURY ON SET BROWSESYNC ON /* У всех программ MiniGUI должно быть главное окно, которое должно быть определено раньше любого другого окна. */ DEFINE WINDOW Main ; AT 0,0 ; WIDTH 640 ; HEIGHT 480 ; TITLE ''Contactos'' ; MAIN ; ICON ''Tutor.Ico'' /* DEFINE WINDOW: Начинается определение окна. Должно быть указано имя окна, которое будет единственным для всей программы. (Может быть использовано в коде одно и то же имя более одного раза, но только одно окно может быть активно в одно и то же время) AT: Указывает Ряд,Колонку верхнего левого угла окна (в пикселях) WIDTH: Ширина окна, указанная в пикселях HEIGHT: Высота окна, указанная в пикселях TITLE: Заголовок окна MAIN: Показывает, что определяется главное окно программы */ // Определение главного меню // У каждого меню могут быть разнообразные POPUPы (подменю) // Количество подменю не ограничено. // После DEFINE POPUP указывается название пункта меню // ''&'' используется, чтобы определить горячую клавишу, ассоциированную // с пунктом меню. В нашем примере используется комбинация ALT+A // Каждый пункт меню определяется посредством MENUITEM. // Класс ACTION указывает процедуру, которая будет выполнена, // когда пользователь выберет данный пункт меню. // SEPARATOR включает горизонтальную линию, использованную, чтобы // отделять пункты меню. DEFINE MAIN MENU DEFINE POPUP ''&Archivo'' MENUITEM ''&Contactos'' ACTION AdministradorDeContactos() MENUITEM ''&Tipos de Contacto'' ACTION AdministradorDeTipos() SEPARATOR MENUITEM ''&Salir'' ACTION EXIT PROGRAM END POPUP DEFINE POPUP ''A&yuda'' MENUITEM ''A&cerca de...'' ACTION MsgInfo (''Tutor ABM'' + Chr(13) + Chr(10) + ''(c) 2003 Roberto Lopez'' ) END POPUP END MENU // Закончено определение главного меню // Элемент управления TOOLBAR может содержать разнообразные // кнопки. // Размер всех кнопок определяется с помощью // класса BUTTONSIZE <Ширина>,<Высота> // FLAT создает плоские кнопки // RIGHTTEXT указывает, что текст на кнопках выводится // справа от рисунка, помещенного на кнопку. DEFINE SPLITBOX DEFINE TOOLBAR ToolBar_1 FLAT BUTTONSIZE 110,35 RIGHTTEXT BUTTON Button_1 ; CAPTION ''Contactos'' ; PICTURE ''Contactos'' ; ACTION AdministradorDeContactos() // CAPTION Указывает текст на кнопке. // PICTURE Файл ассоциированного рисунка (BMP) // ACTION Процедура события, присоединенная к кнопке // (то, что будет выполнено, когда нажмут кнопку) BUTTON Button_2 ; CAPTION ''Tipos Ctto.'' ; PICTURE ''Tipos'' ; ACTION AdministradorDeTipos() BUTTON Button_3 ; CAPTION ''Ayuda'' ; PICTURE ''ayuda'' ; ACTION MsgInfo (''Tutor ABM'' + Chr(13) + Chr(10) + ''(c) 2003 Roberto Lopez'' ) END TOOLBAR END SPLITBOX // Строка состояния, которая появляется в нижней части окна. // У нее могут быть разнообразные секции, определенные посредством STATUSITEM // Существуют дополнительные предопределенные секции // CLOCK и DATE (они показывают часы и текущую дату) DEFINE STATUSBAR STATUSITEM "(c) 2003 Roberto Lopez roblez@ciudad.com.ar" CLOCK DATE END STATUSBAR // Закончено определение окна END WINDOW // Требуется развернуть окно на весь экран MAXIMIZE WINDOW Main // Выводим окно на экран ACTIVATE WINDOW Main // Команда ACTIVATE WINDOW устанавливает состояние ожидания. // Программа будет остановлена в этой точке до тех пор, пока окно // не будет закрыто интерактивно или программно. При этом будут выполняться // только процедуры событий, присоединенные к элементам управления окна // (или к самому окну) Return |