- •1)Структурные особенности Visual Basic. Подпрограммы. Пример.
- •2. Диалоговые окна MsgBox и InputBox. Примеры.
- •3. Четыре принципа объектно-ориентированного программирования. Их реализация в Visual Basic.
- •4. Классы. Интерфейс классов. Создание динамических библиотек на основе классов в Visual Basic. Регистрация библиотек.
- •5. Способы объявления объектных переменных в Visual Basic.
- •6. Раннее и позднее связывание с объектом. Примеры.
- •7. Способы объявления событий классов. Примеры.
- •8. Создание элемента управления ActiveX в Visual Basic. Отображаемые и пользовательские свойств и методы ActiveX-компонент. Передача события приложению–контейнеру. Регистрация компонент.
- •9. Пример динамического способа формирования объектов на форме vb.
- •10)Пример работы с коллекцией объектов, свойствами и методами объектов.
- •11. Работа с отладчиком Visual Basic. Окна Watch, Immediate.
- •12. Оператор On Error. Методы объектов Debug. Условная компиляция. Примеры
- •13. Свойства и методы объектов Debug, Err. Примеры.
- •Объявление переменных
- •Математические операции
- •Строковые операции
- •Оптимизация приложений
- •Оптимизация скорости работы приложения
- •Оптимизация размера приложения
- •Оптимизация размера графики приложения
- •15. Основные свойства и методы объектов Screen. Примеры
- •Свойство ActiveControl
- •16. Основные свойства и методы объектов Clipboard. Примеры.
- •17. Основные свойства и методы объектов App. Примеры
- •18.Редактор меню Menu Editor. Оконные приложения.Основные свойства объекта Menu. Примеры.
- •Отображение контекстных меню
- •Изменения кода для отображения контекстных меню
- •19.Основные объекты (FileSystemObject, File, Drive, Folder и TextStream.), их свойства и методы библиотеки Scripting.FileSystemObject
- •20. Основные свойства, методы и события объекта UserControl.
- •26. История развития объектных моделей.
- •27. Компонентные приложения. Особенности компонент.
- •28. Интеграция приложений средством Automation.
- •29. Объектная модель ms Word. Свойства и методы объекта Application модели ms Word. Пример.
- •30. Примеры процедур на определение списка всех панелей инструментов и тем главного меню ms Word.
- •32. Свойства и методы объектов Options, Dialogs, Selection и Range объектной модели ms Word.
- •33. Объекты, свойства и методы семейства CommandBars
- •34. Объекты и семейства объекта vbe
- •Объект CodeModule .Представляет программу, определенную для таких компонентов проекта как форма, класс или документ. Дополнительные сведения
- •Объект CommandBarEvents
- •Семейство CommandBars
- •Объект vbComponent
- •Семейство vbComponents
- •Объект CodePane
- •Семейство CodePanes
- •Объект Events
- •Семейство LinkedWindows
- •Объект Property
- •Семейство Properties
- •Объект Reference
- •Семейство References
- •Объект ReferencesEvents
- •Объект vbe
- •Объект vbProject
- •Семейство vbProjects
- •Объект Window
- •Семейство Windows
- •Редактор Visual Basic
- •Библиотека объектов Office 2000 и Object Browser
- •37. Объектная модель ms Excel. Свойства и методы объекта Application.
- •38. Объектная модель ms Excel. Свойства, методы, события объекта WorkBook.
- •39. Объектная модель ms Excel. Свойства, методы, события объекта WorkSheet
- •40. Методы класса WorkSheetFunction объектной модели ms Excel. Пример на вычисление выражения.
- •41. Пример использования объекта SpreadSheet в проектах vb.
- •42. Функции работы с матрицами окна vba Excel. Пример решения системы линейных уравнений.
- •43. Свойства объекта Range объектной модели ms Excel.
- •44. Методы объекта Range объектной модели ms Excel. Примеры.
- •45. Пример сортировки слов в строке с использованием объектной модели ms Excel.
- •46. Пример вычисления корня нелинейного уравнения с использованием объектной модели ms Excel.
- •47. Свойства и методы объекта Chart объектной модели ms Excel. Пример.
- •Терминальные свойства объекта Chart
- •Методы объекта Chart
- •События объекта Chart
- •Построение обработчиков событий
- •48. Пример отображения на форме vb графика функции с использованием объектной модели ms Excel. Рассмотреть способ передачи графика через диск и через буфер обмена.
- •49. Методы SolverOk и SolverAdd библиотеки Solver.Xla.
- •50. Методы SolverOptions, SolverSolve и SolverDelete, SolverSave, SolverLoad библиотеки Solver.Xla.
- •52. Пример динамического способа формирования объектов на форме vba Excel.
- •51. Пример решения системы нелинейных уравнений с использованием объектной модели ms Excel.
- •53. Объектная модель (объекты и коллекции) ms Access.
- •54. Свойства и методы объекта Application объектной модели ms Access.
- •55. Интерфейсы объектов данных и интерфейсы прикладного уровня программирования.
- •56. Объектная модель dao рабочей области ms Jet. Объекты и семейства. Пример открытия бд Access.
- •57. Объектная модель dao рабочей области odbcDirect.
- •59.Ручной и программный способ установления связи с источником данных.
- •62.ActiveX-компонент WebBrowser и объект InternetExplorer для работы в www из проектов Visual Basic.
- •86.Особенности работы с логическим инструментом. Пример отображения в окне прямоугольника заданного размера, толщины и цвета.
- •87.Работа со строками в Windows. Изменение цвета и фона строки текста.
- •89.Пример работы с базовыми шрифтами.
- •95.Пример отображения базовых геометрических фигур, использующих api-функции.
- •96.Создание и заполнение произвольных областей. Пример.
Оптимизация скорости работы приложения
Основной способ оптимизации скорости работы — это оптимизация кода приложения. При этом желательно прислушаться к рекомендациям разработчиков Visual Basic 6.
Избегайте переменных типа variant и присваивайте соответствующие их применению типы. При использовании в выражениях переменных типа Variant теряется время на их приведение к конкретному типу в соответствии с типом выражения. Причем, необходимо иметь в виду, что при множественном описании ключевые слова As Type относятся только к одной переменной, то есть Dim А, в, с As String означает, что А и В— переменные типа variant (по умолчанию) и только с — строковая. В этом случае лучше написать Dim A As string, в As String, с As string.
Используйте для арифметических вычислений переменные типа Long или Integer, поскольку они, в отличие от currency, single или Double, более всего соответствуют машинному коду. В табл. 10.4 приведено ранжирование по относительной скорости типов переменных при арифметических вычислениях.
Таблица 10.4. Относительная скорость вычисления для типов переменных
Тип переменной |
Относительная скорость |
Long |
Самая высокая скорость |
Integer |
Ниже чем у Long |
Byte |
Ниже чем у Integer |
Single |
Ниже чем у Byte |
Double |
Ниже чем у Single |
Currency |
Самая низкая скорость |
Назначайте часто используемое свойство объекта в переменные, так как назначение и чтение переменных работает быстрее (от 10 до 20 раз). Для сравнения приведены два примера с двумя вариантами текста кода, при этом второй вариант кода более быстрый, чем первый, и в том и в другом примере.
1. Первый пример.
Первый вариант кода:
For nCounter = 1 То 20
Object(nCounter).Property = ObjectDef.Property
Next nCounter
Второй вариант кода:
valProperty = ObjectDef.Property For nCounter = 1 To 20
Object(nCounter).Property = valProperty
Next nCounter
2. Второй пример.
Первый вариант кода:
For nCounter = 1 То 20
Object.Property = Object.Property & sValue
Next nCounter
Второй вариант кода:
For nCounter = 1 To 20
sValueAll = sValueAll & sValue
Next nCounter
Object.Property = sValueAll
Для хранения одинаковых значений в процедурах вместо переменных типа Static используйте переменные уровня модуля, поскольку они работают быстрее. При этом, правда, текст кода приложения увеличивается за счет дублирования и становится менее читабельным и понятным.
Для критичных по времени вычисления случаев используйте код процедур непосредственно в месте их выполнения взамен вызова этих процедур, который занимает определенное время. Правда при этом необходимо помнить, что размер кода увеличивается за счет дублирования кода процедур.
Вместо переменных, насколько это возможно, используйте константы, поскольку значения констант включаются при компиляции в код приложения, а переменные каждый раз должны быть найдены в памяти и считаны, что, конечно, занимает определенное время.
Замечание
Оптимизация кода приложения, конечно, связана и с оптимизацией его размера. Как видно из некоторых способов оптимизации кода, размер кода либо увеличивается, либо уменьшается при оптимизации скорости приложения