Отправляет email-рассылки с помощью сервиса Sendsay

VB.NET-World

  Все выпуски  

Мир программирования на Visual BASIC 5.0 и HTML. Выпуск 37


Служба Рассылок Subscribe.Ru
Мир программирования на Visual BASIC и HTML
Информация
  Архив рассылки
  Рассылка
  гостевая книга

Вопросы
  Автору
  По VB
  По HTML

Спонсоры
  Городской кот
  Subscribe.Ru
  Majordomo.Ru

Ссылки
  VB Streets
  Visual BASIC
  VB: Step by Step
  SnoozeX Design
  СообЧа
  СообЧа-VB
  Голосования
  VB Студия
  
ВебДрайв - это Ваш персональный диск в Интернете

VB Форумы
WEB:
  VBS Форум
  Ru.Visual.Basic
Mail:
  VBStreets
  СообЧа: VB
подписка - пустое письмо в VB группу

Доска почета
  Sergey VIMBERG
  Олег
  Oleg Palayda
  BSP
  Verter
  Николай
  hackcode
  Дмитрий Данелия
  Виталий Иванов
  Raven
  Сурменок Павел
  Шаронов Игорь
  Максим
  Глеб
  Daniel
  Foxtrot
  Magistr

Кнопки

Рассылка 'Мир программирования на Visual BASIC и HTML.'

мы в режиме:

SUPERTOP

SnoozeX Design

Опрос
Эта рассылка:

Лучшая в инете!
Очень хорошая
Хорошая
Неплохая
Отстой


Результаты

Друзья

Все для вебмастеров. Куча картинок, скриптов, доков
Ассемблер? Это просто! Учимся программировать
Дизайн и программирование
Visual Basic: новости сайтов, советы, примеры кодов
Dummpy Daily eTips


Несколько слов от автора: Привет! Вот за каникулы сверстал вам выпуск! Приятного чтения!
Ваши пожелания:


E-Mail для ответа:

РАССЫЛКА: Открылся сайт рассылки по адресу http://vb-html.da.ru На сайте вы найдете весь архив рассылки, проекты и многое другое.
САЙТ АВТОРА: Открылся сайт автора рассылки по адресу http://alexis.dax.ru
ПРИМЕЧАНИЕ: Выпуски данной рассылки начиная с первого вы сможете прочитать на http://subscribe.ru/archive/comp.design.snoozex/    @LEXis

21.10.2001 Выпуск N36 Обзор ведет @LEXis

 Сегодня в выпуске:

# E-Mail группа "СообЧа-Visual BASIC":
  • О группе
# Помощь по HTML - ведущий Максим:
  • Ещё три мелочи для вебмастера
# Полезные коды Visual BASIC:
  • Как дать возможность пользователям отменить выгрузку форм
  • Закрытие работающей DOS-программы
# Уроки PERL - ведущий Magistr:
  • Третья программа с операторами If...Eq..Then..Else
# Практикум на примерах:
  • Опубликование работ в Интернет. Программистам... (Часть 7 - Заключительная)
# В разделе "вопросы/ответы":
  • Ответы на вопросы читателей
# Рубрика "Объявления"


 E-Mail группа "СообЧа-Visual BASIC"
  • О группе

Группа VB. Заходите в гости. Здесь вы приобретете практические навыки по программированию на Visual Basic. Как вы этого сможете достигнуть? Путем написания собственной серьезной программы. Чем обычно занимается рядовой чайник-программист? Ну, пишет там всякие приколы на VB... Ну, ма-а-ленькую полезную программку наваляет. А как получить навыки в создании серьезных программ? Правильно, путем создания серьезных программ. ;) Но в одиночку вам с этим не справиться. Вот для этого в проекте СообЧа существует группа программистов-чайников, которые занимаются разработкой серьезного софта на VB. Суть состоит в том, что вам совсем необязательно знать все в Visual Basicе. Вам достаточно быть рядовым чайником и немного знать операторы VB. Остальному научимся вместе. На данный момент в группе разрабатывается почтовая программа под рабочим названием "Сообчайлер". Она будет уметь все, что умеет популярная программа The Bat и даже намного больше. Есть сборник оригинальных идей, выдвинутых членами нашей группы, которые мы постараемся реализовать все вместе. Проект разбивается на отдельные простые задачи. Такие как: проверка орфографии, форма для написания нового письма, главное окно... и т.п. Каждую часть делает отдельный человек. Затем он высылает сделанный модуль в группу, и остальные просто присоединяют его к базовому проекту. Вам совсем не обязательно четко представлять, как это сделать. Достаточно просто начать и столкнуться с какой-нибудь проблемой. Пусть это будет даже проблема типа "А как добавить новый модуль к проекту?". Все. Наткнулись... ;) Дальше действуем по одной схеме - пишем письмо с описанием проблемы в группу и мы все вместе разбираемся в проблеме. Таким образом, все остальные получат ЗНАНИЯ и некоторые навыки в решении создавшихся проблем. Не забывайте - все мы чайники. Не стоит бояться задать вопрос. Задавайте - а мы вместе попытаемся найти ответ.
Подписаться в группу (пустое письмо)

 Помощь по HTML - ведущий Максим
  • Ещё три мелочи для вебмастера
1. Делаем страницу стартовой.

Честно говоря, я не пользовался этим ни разу, но может кому то это и нужно (чаще всего встречается на информационных сайтах и порталах). Вот пример кода:
<a href="#" onClick="this.style.behavior='url(#default#homepage)';
this.setHomePage('http://vbhtml.dax.ru/'); return false;">
Сделать страницу стартовой</a>
2. Добавляем страницу в "избранное".
br> Используется для добавления страницы в папку "избранное", создавая тем самым закладку, по которой пользователь сможет легко вернуться. Это уже куда полезнее. Код следующий:
<a href="#" onClick="window.external.addFavorite
('http://vbhtml.dax.ru/', 'сайт'); return false;">
Добавить сайт в избранное</a>
3. Дата последней модификации.

Наверное, ещё полезнее чем второе. Позволяет автоматически указывать дату последнего изменения содержания гипертекстовой страницы.
<script language="JavaScript">
<!--
document.write ("Дата последнего изменения: "
+ document.lastModified);
//-->
</script>
Но есть свой минус. Использование данной "полезности" возлагает на вебмастера обязательство почаще обновлять страницу. Иначе пользователь будет думать, что срок годности вашего ресурса давно истёк... :)

И последнее. Всё вышеперечисленное составляет для пользователя удобства, когда используется в случае необходимости, поэтому не следует злоупотреблять удобствами! :)

 Полезные коды Visual BASIC
  • Как дать возможность пользователям отменить выгрузку форм
Существует множество различных способов выгрузить форму: щелкнуть кнопку Exit или соответствующую команду меню, щелкнуть кнопку со знаком X в верхнем правом углу формы, выбрать команду Close из всплывающего меню окна формы в верхнем левом углу. Можно даже произвести отмену выполнения программы из менеджера задач или перезагрузить компьютер. Так или иначе, было бы полезно показать пользователям возможность отмены операции выгрузки формы, проводимой одним из вышеперечисленных способов. Для этого следует поместить код, осуществляющий проверку выгрузки формы, в событие QueryUnload для этой формы. Данное событие инициируется независимо от метода, используемого для выгрузки формы:
Private Sub Form_QueryUnload(Cancel As Integer, _
UnloadMode As Integer)
' универсальная проверка выгрузки формы
Dim strQuestion As String
Dim intAnswer As Integer
Dim aryMode As Variant
'
aryMode = Array(vbFormControlMenu, vbFormCode, _
vbAppWindows, vbAppTaskManager, vbFormMDIForm)
strQuestion = “Вы готовы выгрузить эту форму?”
intAnswer = MsgBox(strQuestion, vbQuestion + vbYesNo, _
aryMode(UnloadMode))
If intAnswer = vbNo Then Cancel = -1
End Sub

  • Закрытие работающей DOS-программы
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal
lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA"
(ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam
As Any) As Long
Private Declare Function GetWindowThreadProcessId Lib "user32" (ByVal hwnd
As Long, lpdwProcessId As Long) As Long
Private Declare Function OpenProcess Lib "Kernel32.dll" (ByVal
dwDesiredAccessas As Long, ByVal bInheritHandle As Long, ByVal dwProcId As
Long) As Long
Private Declare Function TerminateProcess Lib "kernel32" (ByVal hProcess As
Long, ByVal uExitCode As Long) As Long
Private Const STANDARD_RIGHTS_REQUIRED = &HF0000
Private Const SYNCHRONIZE = &H100000
Private Const PROCESS_ALL_ACCESS = STANDARD_RIGHTS_REQUIRED Or SYNCHRONIZE
Or &HFFF
Private Const WM_CLOSE = &H10

Dim hParent As Long
Dim hPrID As Long

hParent = FindWindow(vbNullString, "Norton Commander - NCMAIN")
' если известно имя окна, если имя неизвестно, то ищем по классу окна:

hParent = FindWindow("TTY",vbNullString)
' M.A. указывает класс "ConsoleWindowClass", но я проверил несколько окон
функцией
' GetClassName - все вернули "TTY"

' Тут, если убедились, что DOS, можно запросить подтверждение с
предупреждением
' о потере несохраненных данных

GetWindowThreadProcessId hParent, hPrID ' получаем ID процесса
hPrID = OpenProcess(PROCESS_ALL_ACCESS, True, hPrID) ' получаем Handle
процесса
TerminateProcess hPrID, 0 ' убиваем его

' на статусной панели остается кнопка, как бы свернутого приложения,
' если по ней щелкнуть, она исчезает, но можно ее убрать и так

SendMessage hParent, WM_CLOSE, 0, vbNullString

 Уроки PERL - ведущий Magistr
  • Третья программа с операторами If...Eq..Then..Else
Запустите Perllive и введите следующий текст:

print "What is your name? ";
$name = <STDIN>
if ($name eq "Randal")
{print "Hello, Randal! How good of you to be here!\n"; }
else { print "Hello, $name! \n"};

Ход работы программы

Значит, вводите вы имя. Если оно ПОЛНОСТЬЮ идентично(не забудьте про регистр символов!) имени Randal, то будет выводится надпись: "Hello,Randal! How good...". Если же они будут отличаться, то будет выводиться "Hello, (имя которое вы ввели)".

Разбор синтаксиса

Первые две строки мы разобрали в прошлом уроке. А вот дальше идут одни из самых действенных и нужных программисту лексем. If..Then..Else. Они есть и в С, и в Visual Basic, поскольку являются очень гибкими иструментами для работы.

IF

Переводится, как "если". То есть, если брать строку с IF, то получится, "Если (заложенное в $name значение) соответсвует (ваше значение. В данном случае это Randal), тогда...(разберем дальше)

EQ

Операция сравнения. То есть то что перед EQ, будет сравниваться с тем, что после него. Но даже если различие только в одном символе, то уже идет несоответствие.

THEN

Употребляется только в связке с IF и EQ. Буквально переводится, как "то". То есть, если одно значение будет соответствовать другому, то будет выполняться заложенное действие. В нашем случае это {print "Hello, Randal! How good of you to be here!\n";
Кстати, вы не увидите этой лексемы у меня в примере. Она заменяется фигурными скобками. По моему, это удобнее, но немного больше хлопот.
}

ELSE

Переводится, как "другое". То есть, если оператор EQ нашел несоответствие мжду сравниваемыми значениями, то он посылает команду к ELSE. После того, как ELSE получил команду, он выполняет заложенное действие. В нашем случае это {print "Hello, $name! \n"};

Четвертая программа. Секретное слово.

Иногда приходится защищать свою программу, то есть ставить пароль. Как и в прошлой программе, мы воспользуемся операторами IF..ELSE. Итак, введите в новый документ эти строчки:

$secret = "magistr";
print "What is your name? "; $name = <STDIN>; chomp($name);
if ($name eq "Randal") { print "Hello, Randal! How good of you to be here!\n"; } else {print "Hello, $name!What is the secret word? "}; $parole = ; chomp($parole);
if($parole eq $secret){print "OK. Parole is right"}; while ($parole ne $secret) {print "Wrong, try again. What is the secret worcl.";last};

Ход работы программы

Сначала прога спрашивает вас по имени. Потом, если вы ввели Randal, выводится подтверждаюшщая строка и прога замирает. Если вы ввели не Randal, то активизируется дальнейший код. Он спрашивает вас о пароле. А пароль мы, если вы заметили, выбрали magistr. Если вы введете его, то прога подтвердит и замрет. Если же введете неправильный пароль, он начнет вас спрашивать до тех пор, пока не ответите правильно.

Разбор синтаксиса

$secret

Скалярная переменная, объявляющая пароль.

chomp($скалярная переменная)

Это надо было рассказать еще в прошлом уроке. Это функция, становящаяся скалярной переменной(которая указана в скобках) и удаляет из ее значения \n, если он есть.
Примечание: обязательно ставьте его после каждой переменной, иначе не распознаются значения в переменной.

ne

Эта операция полностью противоположна eq.

while

Эта лексема отвечает за бесконечное повторение вопроса или сообщения. То есть, пока введенный пароль не будет идентичным magistr, то прога будет спрашивать до того времени, когда вы не введете правильный пароль.

last

Очень важная лексема, работающая с while. Если ее не будет, то Wrong,try again... будет повторятся тысячами раз, не давая вам ничего ввести. Можете попробовать использовать while без last, увидите наглядно :o)))

Итак, мы с вами научились использовать циклы. В следующем уроке мы узнаем, что такое массив, как его использовать и как делать, чтобы в проге было несколько паролей.

С удовольствием отвечу на критику, советы и благодарности с адреса magistr@wincmd.ru. Искренне ваш,
Алекс aka Magistr

 Практикум на примерах
  • Опубликование работ в Интернет. Программистам... (Часть 7 - Заключительная)

Стоит ли быть независимым?

Да, именно такой вопрос могут сейчас задать многие. Не проще ли придумать идею и пойти с ней по софтверным фирмам, предлагая свои услуги?
В данном случае есть один важный момент - прав тот, кто платит деньги. И в праве претензий на авторство продукта он - один из первых. На самом деле очень большое количество знаменитых софтверных компаний родилось из среды независимых разработчиков, которые сами написали и продвигали "продукт".
Думаю, что независимым быть стоит.

 Вопросы / Ответы
  • Отправитель вопроса Владимир Плотников
    Один небольшой вопрос. Я не знаю как указать программно позицию ползунка, который создается MDIForm для моей дочерней формы. Если возможно, то просьба помочь в решении проблемы. Заранее спасибо.
  • Отправитель вопроса Олег
    Скажите, на каком языке программирования пишутся такие вещи, как поисковый Яndex-бар (встраиваемый непосредственно в браузер), или такая программа, как переводчик on-line, который через команду в контекстном меню IE переводит выделенное слово ?
  • Отправитель вопроса Олег
    Скажите, пожалуйста, что нужно сделать при загрузке страницы в браузере, в его адресной строке слева от адреса страницы стояла бы пиктограммка ? И, каким образом делают ссылки на страницы при нажатии на которые адрес страницы добавляется в закладки (или даже страница делается стартовой) ?
  • Отправитель вопроса Олег
    Какие шрифты можно "пристегивать" к web-странице и где их взять ? Спасибо
  • Отправитель вопроса Мила
    Привет @lexis ! Меня интересует вопрос: Базы Данных & HTML. Какими программными средствами надо пользоваться для доступа к БД с WEB-странички?
  • Отправитель вопроса Michael
    Как сделать, чтоб по форме с background picture Звездное небо двигался космический корабль и заслонял звезды ТОЛЬКО своим корпусом, а не всем прямоугольником, в к-рый он вписан? Заранее благодарен,
 Объявления
  • Требуются люди
    Хочу напомнить, что еще пусты многие вакансии рассылки:
    - Рубрика "Практикум на примерах"
    Также можно просто присылать коды.

Код моей кнопки:

<!-- 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" -->

Выпуск подготовили:                    
@LEXis
и еще наша команда!
@LEXis ICQ uin : 14912636
Подписаться на рассылку Кувалина Алексея
Мир программирования на Visual BASIC и HTML
© 2000 - 2001 @LEXis & Design by SnoozeX Design
Рассылка является составной частью проекта "СообЧа - СООБщество ЧАйников"
  • Сайт СообЧа: http://www.soobcha.ru/
  • Сайт группы по VB: http://soobcha-vb.narod.ru/
  • Сайт рассылки: http://soobcha-vb.narod.ru/alex/
  • Подписаться на сообщество
    © 2000 - 2001 СообЧа (СООБщество ЧАйников)
    Спасибо за внимание. Ваш @LEXis


    http://subscribe.ru/
    E-mail: ask@subscribe.ru
    Отписаться
    Убрать рекламу

    В избранное