|
|
Несколько слов от автора:
Приветствую, вот накатываю вам очередной выпуск рассылки. Кстати, наша рассылка победила в конкурсе проводимый МАЕРДОМОМ и нам предоставили
хостинг и новый домен http://vb.net.ru , но пока он не работает. Ну вот и все, читайте выпуск.
РАССЫЛКА: Открылся сайт рассылки по адресу http://soobcha-vb.narod.ru/alex/ На сайте вы найдете весь архив рассылки, проекты и многое другое.
ПРИМЕЧАНИЕ: Выпуски данной рассылки начиная с первого вы сможете прочитать на http://subscribe.ru/archive/comp.design.snoozex/
@LEXis
|
|
12.06.2001 Выпуск N27 Обзор ведет @LEXis
# E-Mail группа "СообЧа-Visual BASIC":
| О группе |
| Типы переменных |
| По теме Api функции CharUpper |
# Полезные коды Visual BASIC:
| Перевод набранного текста в разные раскладки |
# В разделе "вопросы/ответы":
| Ответы на вопросы читателей |
# Рубрика "Объявления"
E-Mail группа "СообЧа-Visual BASIC"
|
| О группе |
Группа VB. Заходите в гости. Здесь вы приобретете практические навыки по программированию на Visual Basic. Как вы этого сможете достигнуть? Путем написания собственной серьезной программы. Чем обычно занимается рядовой чайник-программист? Ну, пишет там всякие приколы на VB... Ну, ма-а-ленькую полезную программку наваляет. А как получить навыки в создании серьезных программ? Правильно, путем создания серьезных программ. ;) Но в одиночку вам с этим не справиться. Вот для этого в проекте СообЧа существует группа программистов-чайников, которые занимаются разработкой серьезного софта на VB. Суть состоит в том, что вам совсем необязательно знать все в Visual Basicе. Вам достаточно быть рядовым чайником и немного знать операторы VB. Остальному научимся вместе. На данный момент в группе разрабатывается почтовая программа под рабочим названием "Сообчайлер". Она будет уметь все, что умеет популярная программа The Bat и даже намного больше. Есть сборник оригинальных идей, выдвинутых чле!
нами нашей группы, которые мы постараемся реализовать все вместе. Проект разбивается на отдельные простые задачи. Такие как: проверка орфографии, форма для написания нового письма, главное окно... и т.п. Каждую часть делает отдельный человек. Затем он высылает сделанный модуль в группу, и остальные просто присоединяют его к базовому проекту. Вам совсем не обязательно четко представлять, как это сделать. Достаточно просто начать и столкнуться с какой-нибудь проблемой. Пусть это будет даже проблема типа "А как добавить новый модуль к проекту?". Все. Наткнулись... ;) Дальше действуем по одной схеме - пишем письмо с описанием проблемы в группу и мы все вместе разбираемся в проблеме. Таким образом, все остальные получат ЗНАНИЯ и некоторые навыки в решении создавшихся проблем. Не забывайте - все мы чайники. Не стоит бояться задать вопрос. Задавайте - а мы вместе попытаемся найти ответ.
Подписаться в группу (пустое письмо)
| Типы переменных |
Raven Июнь 2001
Visual Basic работает с 14 стандартными типами переменных.
String
Строковые переменные хранят символы. Один из способов обозначить данный
тип переменной состоит в добавлении символа "$" к концу ее имени, например:
AStringVariable$. Теоретически такая переменная может содержать до 2
миллиардов символов. ( А вы другой книжке у меня написано, что до 65535
символов... ) В любом случае на конкретном компьютере это число будет
гораздо меньше из-за ограниченных объемов оперативной памяти, ресурсов
Windows или числа символов, используемых в форме.
Одно из наиболее основных применений строковых переменных состоит в
выборе информации из полей ввода. Например, если есть поле ввода с именем
Textl, то тогда оператор ContentOfTextlS = Textl.Text присваивает строку из
поля ввода переменной в левой части данного оператора.
Integer
Целочисленные переменные могут хранить только относительно небольшие
целые числа (в диапазоне от -32768 до +32767). Арифметические операции над
такими числами выполняются очень быстро. Для обозначения такого типа
используется символ "%":
AnIntegerVariable% = 3
Long Integer
Данный тип впервые появился в языке QuickBASIC. В таких переменных
хранятся целые значения от -2 147483648 до +2 147483647. Обозначается
символом "&". Арифметические операции над такими числами выполняются тоже
очень быстро, и при работе с процессором 386DX или 486DX существует лишь
небольшая разница в скорости вычислений между Long Integer и Integer.
ALongIntegerVariableS = 123456789
Single Precision
Идентификатором для данных чисел является символ "!". Данный тип
переменной позволяет хранить дробные числа с точностью до семи цифр. Это
означает, что если получается результат 12345678.97, то часть 8.97 не
является точной. Результат может быть равен, к примеру, 12345670.01. Длина
чисел может достигать 38 знаков. Вычисления с данными переменными тоже будут
приблизительными. Более того, арифметические действия выполняются медленнее,
чем с целочисленными переменными.
Double Precision
Переменные такого типа позволяют хранить числа с точностью до 16 цифр и
длиной до 300 символов. Идентификатором является "#". Вычисления с ними тоже
являются приблизительными, а скорость их относительно небольшая. В основном
переменные типа Double Precision используются для научных расчетов.
Currency
Данный тип отсутствовал в версиях GW-BASIC и QuickBASIC. Он создан для
того, чтобы избежать ошибок при преобразовании десятичных чисел в двоичную
форму и наоборот. (Невозможно 1/10 представить как сумму 1/2,1/4, 1/8, 1/16
и т.п.) Данный тип может иметь до 4 цифр после запятой, и до 14 - перед ней.
Внутри данного диапазона вычисления будут точными. Идентификатор
представляет собой символ "@". Поскольку все арифметические операции, кроме
сложения и вычитания, выполняются так же медленно, как и в случае переменных
с двойной точностью, данный тип является предпочтительным для проведения
финансовых расчетов. (Для тех, кто интересуется: данный тип использует целые
числа из 19 разрядов, которые затем делятся на 10000. Это позволяет
организовать 15 знаков до запятой и 4 после нее.)
Date
Этот тип данных позволяет хранить значения времени и даты в промежутке
от полуночи 1 января 100 года до полуночи 31 декабря 9999 года. Такие
значения в тексте программ обозначаются символами "#", например:
Millenium = #January 1, 2000#
Если вводится только значение даты, Visual Basic полагает, что время
равняется 00:00.
Byte
Байтовый тип является новым в Visual Basic 5 и предназначен для хранения
целых чисел от 0 до 255. Его использование позволяет сильно экономить
оперативную память и уменьшать размер массивов по сравнению с предыдущими
версиями Visual Basic. Кроме того, он используется при работе с двоичными
файлами.
Boolean
Булев тип данных может хранить только два значения: True либо False. Его
использование вместо целочисленных переменных является хорошим стилем
программирования.
Variant
Данный тип добавлен в Visual Basic 5 из версии 2.0. Переменная типа
variant может содержать данные любого типа. Если Visual Basic не знает тип
принимаемых данных, необходимо использовать variant.
Тип информации не имеет значения, поскольку variant может содержать любой
тип данных (численный, дата/ время, строковый). Visual Basic автоматически
производит необходимые преобразования данных, поэтому не стоит беспокоиться
об этом. С другой стороны, можно использовать встроенные функции для
проверки типа данных, хранящихся в переменной типа variant. Они позволяют
легко проверить, правильно ли пользователь вводит информацию.
Использование такого типа данных, как variant, замедляет работу
программы, так как требуется время и ресурсы для операций преобразования
типов. Кроме того, многие программисты понимают, что использование
автоматических преобразований типов данных приводит к неаккуратному виду
программ. Единственная причина в использовании variant состоит в возможных
ошибках при преобразовании типов непосредственно программистом.
| По теме Api функции CharUpper |
Сурменок Павел Июнь 2001
Аналог этой функции есть в VB. Это функция StrConv. Также она может
конвертировать символы в верхний регистр и конвертировать первый
символ каждого слова в верхний регистр, а остальные символы в
нижний. Пример работы:
Dim Source As String
Dim UppCaseText As String
Dim LowCaseText As String
Dim FirstCharUpp As String
Source = "обычная строка"
UppCaseText = StrConv (Source, vbUpperCase)
LowCaseText = StrConv (Source, vbLowerCase)
FirstCharUpp = StrConv (Source, vbProperCase)
'В итоге получилось:
' UppCaseText = "ОБЫЧНАЯ СТРОКА"
' LowCaseText = "обычная строка"
' FirstCharUpp = "Обычная Строка"
Также эта функция может конвертировать текст в кодировку Unicode и
из кодировки Unicode. Но для этого лучше использовать Api функции
WideCharToMultiByte и MultiByteToWideChar.
Поленые коды на Visual BASIC
|
| Перевод набранного текста в разные раскладки |
Вот решил найти ответ на давно заданный вопрос, вот, ловите код:
Sub RusLat()
Selection = Text1
aText = Selection 'Выделенный текст / s-раскладки
Dim KeyS
Dim Pos
KeyS = 0 'РАСКЛАДКА
Dim s(1) As String, n As String
s(0) = _
"qwertyuiop[]asdfghjkl;'zxcvbnm,.QWERTYUIOP{}ASDFGHJKL:" + Chr(34) + "ZXCVBNM<>~"
s(1) = _
"йцукенгшщзхъфывапролджэячсмитьбюёЙЦУКЕНГШЩЗХЪФЫВАПРОЛДЖЭЯЧСМИТЬБЮЁ"
If Asc(Left(aText, 1)) > 127 Then KeyS = 1
For i = 1 To Len(aText)
Pos = InStr(s(KeyS), Mid(aText, i, 1))
If Pos = 0 Then n = n + Mid(aText, i, 1) Else n = n + Mid(s(1 - KeyS), Pos, 1)
Next i
aText = n
Text1 = aText
'Selection.TypeText aText
End Sub
Private Sub Command1_Click()
Call RusLat
End Sub
|
| В этом выпуске нет вопросов
|
|
| Требуются люди
Хочу напомнить, что еще пусты многие вакансии рассылки:
- Рубрика "Рецензия книг"
- Рубрика "Практикум на примерах"
Также можно просто присылать коды.
|
| Проекты группы СообЧа-VB
Вот проекты которые на данный момент в рабочем состоячнии:
- Сообчайлер: почтовый клиент
- Крестики - Нолики: игра :)
- Secret CODE: шифратор
- Inet TIMER: блокиратор интернета
|
|
Код моей кнопки:
<!-- SnoozeX Design "PLAY" -->
<a href="http://snoozex.boom.ru" TARGET="_blank"><BR><IMG SRC="http://snoozex.boom.ru/new.gif" WIDTH=88 HEIGHT=31 BORDER=1 ALT="SnoozeX Design"></a>
<!-- SnoozeX Design "END" -->
|
© 2000 - 2001 @LEXis & Design by SnoozeX Design
|
Рассылка является составной частью проекта "СообЧа - СООБщество ЧАйников"
© 2000 - 2001 СообЧа (СООБщество ЧАйников)
|
| |
Спасибо за внимание. Ваш @LEXis |
|
|