Rapid-Q Documentation by William Yu ©1999-2000
Содержание
Содержание (Содержание )
Введение (Preface
)
Глава 1: Обзор Rapid-Q
1.1
Скорость выполнения программ
1.3
Требуются ли дополнительные
DLL
для выполнения моих программ?
1.4
Сколько памяти требует Rapid-Q?
1.5
Легко ли взломать мою программу?
1.6
Нужна ли лицензия для распрост
р
анения моих программ?
Глава 2
: Основы Rapid-Q
2.1
Среда разработки Rapid-Q
требуемые файлы и настройки
2.2
Использование Rapid-Q IDE
2.3
Компиляция и запуск простой программы
2.4
Ключи командной строки
2.5
Основная структура Rapid-Q программы
2.6
Насколько Rapid-Q похож на другие Basic языки?
Глава 3: Rapid-Q Руководство
3.1
Директивы Rapid-Q
$APPTYPE
$DEFINE and $UNDEF
$ESCAPECHARS
$IFDEF and $IFNDEF
$INCLUDE
$MACRO
$OPTIMIZE
$OPTION
$RESOURCE
$TYPECHECK
3.2
Переменные и присвоения значений
Числовые типы, строковые типы
Диапазон числовых переменных
3.3
Объекты и компоненты Rapid-Q
3.4
Методы и события компонента
3.5
Rapid-Q Подпрограммы и функции
Особые условия
Передача по ссылке или по значению
3.6
Область видимости переменных
Глава 4: Написание перво
го
Rapid-Q приложения.
4.1
Какое приложение написать
Простая программа хранения данных
Применение QButton, QEdit, QForm, QLabel, и QListBox
4.2
Создание формы
4.3
Обработка событий
(
Handling events
)
Как обработать событие
on click
( on click events )
4.4
Листинг исходного кода
Глава 5: Введение в формы. (Introduction to Forms
)
5.1
Что такое форма (What's in a form?
)
5.2
Добавление компонентов на форму (
A
dding components to a form
)
5.3
Отслеживание положения мыши на форме (
T
racking mouse position on form
)
Введение в MouseX и MouseY
5.4
Специальные события на форме (
S
pecial Events for forms
)
OnResize, OnKeypress, OnKeydown
5.5
Диалоговые окна
(
D
ialog boxes
)
Использование ModalResult
5.6
Использование метода
CREATE (U
sing the CREATE Method
)
5.7
Вложенные CREATEs
(
E
mbedding CREATEs
)_
5.8
Cоздание меню (Сreating Menus
)
Глава 6:
Создание консольного приложения (
Writing Console Applications
)
6.1
O
бзор консольных функций (О
verview of console functions
)
6.2
Hello world
(пример)
Writing/Copying to/from offscreen pages
6.3
Использование
PEEK
и
POKE
6.4
Ввод данных пользователем (
Accepting user input
)
6.5
Перехват расширенной клавиатуры (
Trapping extended keys
)
6.6
Совместное использование
CONSOLE
и
GUI
(
Mixing CONSOLE with GUI
)
6.7
Linux/Unix
консоль (
Linux/Unix console
)
Глава 7: Введение в потоки
7.1
Файловые
потоки
Чтение\запись
чисел и строк
7.2
П
оток
и в памяти
Копирование
поток
ов.
7.3
Чтение/Запись пользовательских типов и массивов на диск (
Saving/Loading UDTs and Arrays
)
Глава 8:
Использованеи графических ресурсов (
Using Image Resources
)
8.1
Поддержка файлов ресурсов (
Supported Resources
)
8.2
Введение в
списки
Image
(
Image lists
)
Еще о
Rapid-Q
кэшировании графики (
More on Rapid-Q's image cache
)
8.3
Lheubt
типы ресурсов (
Other kinds of Resources
)
Глава 9: SUBI, FUNCTIONI,
и
DLL
9.1
SUB/FUNCTIONs
с неопределенным числом параметров
9.2
Еще о
FUNCTIONI
9.3
Введение в DLLs
9.4
Как вызвать
DLL
9.5
Использование
Quick View
9.6
Написание собственной
DLLs
9.7
Использование неподдерживаемых типов в вызовах
DLL
9.8
Соответс
т
вие
типов при вызовах
API
функций.
Глава 10: Создание Custom
(самодельных)
компонентов
10.1
Введение в
создание объектов
10.2
Создание компонента на основе
QCanvas
(
Extending
QCanvas
)
Добавление новых свойств (
Adding new properties
)
использование метода
Constructor
(
Using Constructor
)
10.3
Добавление\переопределение методов (
Adding/Overriding
)
10.4
Определение событий (
Defining Events
)
Наследование событий (
Inherting Events
)
10.5
Добавление компонентов к компонентам (
Adding components to components
)
10.6
Создание компонентов на основе пустого компонента (
Extending empty components
)
10.7
Public/Private
свойства и методы
10.8
T
емплейты и установки свойств (Т
emplates and property sets
)
10.9
Создание
событий (
custom events
)
10.10
QDiamondBox
- исходный текст самодельного компонента
Глава 11:
Использование указателей на функции (
Using Function Pointers
)
11.1
Введение в
концепцию
11.2
Определение указателей на функцию
(
Defining function pointers
)
11.3
Правильное использование указателей на функцию (
Using function pointers properly
)
11.4
Что не поддерживается в
Rapid-Q (What's not supported in Rapid-Q
)
Глава 12:
Графика под
Windows (Graphics under Windows
)
12.1
Сравнение графики под
DOS
и
Windows (Graphics under DOS versus Windows
)
12.2
Какие
компоненты требуют перерисовывания (
What components require painting
)
12.3
Рисование графики динамически (
Drawing graphics dynamically
)
Использование
QBITMAP
как невидимой страницы (
Using QBITMAP as the off-screen page
)
12.4
Изменение шрифта и вставка графики в
List
и
Combo Boxes
(
Ownerdraw List and Combo Boxes
)
Ownerdraw Variable
против
. Fixed
12.5
Использование
DirectX
(
Using DirectX
)
Глава 13: Direct3D for Rapid-Q
13.1
Requirement specifications
Required or suggested files
13.2
Using Anim8or to create 3D models
13.3
Loading/Using .X files
13.4
Wrapping textures around an object
13.5
Rotate/Moving objects
Глава 14: Programming in MySQL
14.1
Quick introduction
Required files
14.2
Connecting to MySQL
14.3
How to perform queries and obtain result
14.4
Interfacing QMYSQL with QSTRINGGRID
14.5
Storing and retrieving blobs
14.6
Using LOADBLOB and SAVEBLOB
14.7
In conclusion
Глава 15: COM Programming
15.1
Supported COM extensions
COM clients (automation controllers)
Active Documents
How to register COM objects
15.2
About QOLEOBJECT
15.3
About QOLECONTAINER
Appendix A: Rapid-Q Component/Object Reference
APPLICATION
(Windows/Linux)
Свойства
,
Методы
Application примеры
CLIPBOARD
Свойства
,
Методы
ClipBoard примеры
PRINTER
Свойства
,
Методы
Printer примеры
QBITMAP
Свойства
,
Методы
QBitmap примеры
QBUTTON
(Windows/Linux)
Свойства
,
Методы
,
Events
,
QButton примеры
QCANVAS
(Windows/Linux)
Свойства
,
Методы
,
Events
,
QCanvas примеры
QCHECKBOX
(Windows/Linux)
Свойства
,
Events
,
QCheckbox примеры
QCOMBOBOX
(Windows/Linux)
Свойства
,
Методы
,
Events
,
QCombobox примеры
QCOMPORT
Свойства
,
Методы
,
Events
,
QComPort примеры
QCOOLBTN
(Windows/Linux)
Свойства
,
Методы
,
Events
,
QCoolbtn примеры
QDIRTREE
Свойства
,
Методы
,
Events
,
QDirTree примеры
QEDIT
(Windows/Linux)
Свойства
,
Events
,
QEdit примеры
QFILELISTBOX
Свойства
,
Методы
,
Events
,
QFileListBox примеры
QFILESTREAM
(Windows/Linux)
Свойства
,
Методы
,
QFilestream примеры
QFONT
(Windows/Linux)
Свойства
,
Методы
,
QFont примеры
QFONTDIALOG
Свойства
,
Методы
,
Events
,
QFontDialog примеры
QFORM
(Windows/Linux)
Свойства
,
Методы
,
Events
,
QForm примеры
QGAUGE
Свойства
,
QGauge примеры
QGLASSFRAME
Свойства
QGlassFrame примеры
QGROUPBOX
Свойства
,
Методы
,
Events
,
QGroupBox примеры
QHEADER
Свойства
,
Методы
,
Events
,
QHeader примеры
QIMAGE
Свойства
,
Методы
,
Events
,
QImage примеры
QIMAGELIST
Свойства
,
Методы
,
QImageList примеры
QLABEL
(Windows/Linux)
Свойства
,
Events
,
QLabel примеры
QLISTBOX
(Windows/Linux)
Свойства
,
Методы
,
Events
,
QListbox примеры
QLISTVIEW
Свойства
,
Методы
,
Events
,
QListView примеры
QMAINMENU
(Windows/Linux)
Свойства
,
Методы
,
QMainMenu примеры
QMEMORYSTREAM
(Windows/Linux)
Свойства
,
Методы
,
QMemorystream примеры
QMENUITEM
(Windows/Linux)
Свойства
,
Методы
,
Events
,
QMenuItem примеры
QMYSQL
(Windows/Linux)
Свойства
,
Методы
,
QMySQL примеры
QOPENDIALOG
(Windows/Linux)
Свойства
,
Методы
,
QOpenDialog примеры
QOLECONTAINER
Свойства
,
Методы
,
QOleContainer примеры
QOLEOBJECT
Свойства
,
Методы
,
QOleObject примеры
QOUTLINE
Свойства
,
Методы
,
Events
,
QOutLine примеры
QOVALBTN
(Windows/Linux)
Свойства
,
Методы
,
Events
,
QOvalbtn примеры
QPANEL
(Windows/Linux)
Свойства
,
Events
,
QPanel примеры
QPOPUPMENU
Свойства
,
Методы
,
QPopupMenu примеры
QRADIOBUTTON
(Windows/Linux)
Свойства
,
Events
,
QRadioButton примеры
QRECT
QREGISTRY
Свойства
,
Методы
,
QRegistry примеры
QRICHEDIT
(Windows/Linux)
Свойства
,
Методы
,
Events
,
QRichedit примеры
QSAVEDIALOG
Свойства
,
Методы
,
QSaveDialog примеры
QSCROLLBAR
(Windows/Linux)
Свойства
,
Events
,
QScrollBar примеры
QSCROLLBOX
Свойства
,
Методы
,
Events
,
QScrollBox примеры
QSOCKET
(Windows/Linux)
Свойства
,
Методы
,
QSocket примеры
QSPLITTER
Свойства
,
Events
,
QSplitter примеры
QSTATUSBAR
Свойства
,
Методы
,
Events
,
QTrackBar примеры
QSTRINGGRID
Свойства
,
Методы
,
Events
,
QStringGrid примеры
QSTRINGLIST
(Windows/Linux)
Свойства
,
Методы
,
QStringList примеры
QTABCONTROL
Свойства
,
Методы
,
Events
,
QTabControl примеры
QTIMER
(Windows/Linux)
Свойства
,
Events
,
QTimer примеры
QTRACKBAR
Свойства
,
Методы
,
Events
,
QTrackBar примеры
QTREEVIEW
Свойства
,
Методы
,
Events
,
QTreeView примеры
Appendix B: Rapid-Q DirectX Component/Object Reference
QDXIMAGELIST
Свойства
,
Методы
,
Events
,
QDXImageList примеры
QDXSCREEN
Свойства
,
Методы
,
Events
,
QDXScreen примеры
QDXSOUND
Свойства
,
Методы
QDXSound примеры
QDXTIMER
Свойства
,
Методы
,
Events
,
QDXTimer примеры
Rapid-Q Direct3D Component/Object Reference
This is a work in progress, some properties or methods may change in the future. All 3D operations are done in Retained mode.
QD3DFace
Свойства
,
Методы
,
QD3DFace примеры
QD3DFrame
Свойства
,
Методы
,
QD3DFrame примеры
QD3DLight
Методы
,
QD3DLight примеры
QD3DMesh
Свойства
,
Методы
,
QD3DMesh примеры
QD3DMeshBuilder
Методы
,
QD3DMeshBuilder примеры
QD3DTexture
Методы
,
QD3DTexture примеры
QD3DVector
Свойства
,
QD3DVector примеры
QD3DVisual
Методы
,
QD3DVisual примеры
QD3DWrap
Методы
,
QD3DWrap примеры
Appendix C: Rapid-Q Keywords & Statements
Valid Operators
(In order of precedence)
Exponentiation (^)
Multiplication/Division and Shifts (*, /, \ (integer division), SHL, SHR)
Modulo arithmetic (MOD, INV)
Addition and subtraction (+, -)
Relation operations (=, >, <, <>, <=, >=)
Logical operations in order from high to low (NOT, AND, OR, XOR)
Rapid-Q internal definitions
WIN32, UNIX, TYPE
Rapid-Q supported Data Types
BYTE, WORD, INTEGER, VARIANT, etc...
Branching with GOTO and GOSUB
GOTO, GOSUB, RETURN
User defined types
TYPE versus STRUCT
Conditional statements
IF .. THEN .. ELSE, SELECT CASE
Loops
FOR .. NEXT, DO .. LOOP, WHILE .. WEND
Constructors/Методы
CONSTRUCTOR, CREATE, WITH
Procedures
SUB, FUNCTION, SUBI, FUNCTIONI
Internal Variables
Command$, CurDir$, MouseX, MouseY, etc...
Console keywords
,
Detailed list
CLS, COLOR, PRINT, INKEY$, etc...
Other reserved keywords
,
Detailed list
ABS, LEN, MID$, SWAP, etc...
Touble Shooting
How to Debug your programs
Up
Next Глава