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

VB.NET-World

  Все выпуски  

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


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

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

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

просьба кликнуть по этому баннеру для помощи автору рассылки

Ссылки
  VB Streets
  Visual BASIC
  VB: Step by Step
  SnoozeX Design
  СообЧа
  СообЧа-VB
  Голосования

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

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

Кнопки

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

мы в режиме:

SUPERTOP

SnoozeX Design

Опрос
Эта рассылка:
Лучшая в инете Очень хорошая
Хорошая
Неплохая
Хуже некуда


результаты

Друзья

Все для вебмастеров. Куча картинок, скриптов, доков
Ассемблер? Это просто! Учимся программировать
Дизайн и программирование
Html для начинающих и не только


Несколько слов от автора: Привет! Извиняюсь, что так долго не выходил, решил устроить себе отпуск. Все.
Ваши пожелания:


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

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

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

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

# E-Mail группа "СообЧа-Visual BASIC":
  • О группе
  • Функция GetPixel
  • Распечатка Picture Box
# Помощь по HTML - ведущий Daniel и Максим:
  • dhtml: графическое меню навигации с подразделами
# Полезные коды Visual BASIC:
  • Определение високосного года
# Практикум на примерах:
  • Опубликование работ в Интернет. Программистам... (Часть 3)
# В разделе "вопросы/ответы":
  • Ответы на вопросы читателей
# Рубрика "Объявления"


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

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

  • получение данных о точках загруженного изображения

Павел Сурменок Июль 2001

  • Функция GetPixel

Declare Function GetPixel Lib "gdi32" (ByVal hdc As Long, ByVal nXPos As Long, ByVal nYPos As Long) As Long

GetPixel возвращает значение RGB пиксела в заданный координатах в контексте устройства

Возвращаемое значение

В случае ошибки функция возвращает &HFFFF. В успешном случае функция возвращает значение RGB пиксела в заданной точке

Параметры
hdc
Дескриптор контекста устройства
nXPos
Координата x точки для определения цвета
nYPos
Координата y точки для определения цвета
Пример

' Определяем значение цвета точки
' с координатами (75,100).
Dim rgbVal As Long  ' значение RGB точки

' Определяем цвет на форме в точке (75,100)
rgbVal = GetPixel(Form1.hDC, 75, 100)

Debug.Print "Значение RGB точки" & rgbVal

  • Распечатка Picture Box

Verter Июль 2001

Private Sub mnuРаспечатать_Click()
frmMain.Cmdialog.CancelError = True
On Error GoTo 10
frmMain.Cmdialog.ShowPrinter

Printer.PaintPicture picOut.Image, 0, 0
Printer.EndDoc
10 frmMain.Cmdialog.CancelError = False
End Sub

 Помощь по HTML - ведущие Daniel и Максим
  • dhtml: графическое меню навигации с подразделами
В прошлом выпуске рассылки я наглядно продемонстрировал как создать текстовое меню навигации. А как быть если какой вэбмастер захотел вместо текстовых ссылок впихнуть красочные картинки? Уж тут одним CSS точно не обойтись. Для этого и существует в DHTML понятие слои. Их название говорит само за себя: слой можно наложить, спрятать, подвигать и делать с ним всё, что душе угодно. Нам же лишь следует описать его содержимое и поведение. Тоесть делаем "прыгающее" графическое меню нвигации.
Как всегда начинаем с описания стилей:
<style>
 .hidden {position: absolute; visibility: hidden;}
 .visible {position: absolute; visibility: visible; z-index: 3;}
</style>
Классы .hidden и .visible будут управлять "видимостью" слоёв скрытых подразделов. Свойство z-index следует указывать больше 1, иначе мы его просто не увидим за массивом объектов, которые будут его перекрывать.
Дальше делаем сам слой (тэг <div> для Explorer'a), а точнее два: один с рисунком раздела, другой с рисунками подразделов. События onmouseover и onmouseout будут указывать ява сценарию поведение слоя относительно действий мышки. Значения top и left означают позиционирование слоя по отношению к верхнему и левому углам экрана, соответственно. Также следует оговориться, что для последующих разделов легче создать таблицу и все слои помещать в ячейках.
<div style="position: absolute; top: 20px; left: 20px;"
onmouseover="javascript:showObject(Nav1)"
onmouseout="javascript:hideObject(Nav1)">
<img src="рисуночек_раздела.gif" width="100" height="15" border="0">
</div>
<div id="Nav1" class="hidden" style="position: absolute; top: 40px; left: 20px;"
onmouseover="javascript:showObject(Nav1)"
onmouseout="javascript:hideObject(Nav1)">
<img src="рисуночек_подраздела.gif" width="100" height="15">
<br>
<img src="рисуночек_подраздела.gif" width="100" height="15">
Дальше идёт ява-сценарий, описывающий события showObject и hideObject. Когда мышка над "главным" слоем - показывыается наш слой с подразделами. Иначе говоря будет происходить смена стилей .hidden и .visible один на другой.
<script language="JavaScript">
function showObject(obj)
{
 obj.className = "visible"
}
function hideObject(obj)
{
 obj.className = "hidden"
}
</script>
Для более быстрой загрузки рекомендуется сценарий помещать в заголовок (тэг ). Работающий вариант и цельный код можно скачать здесь.

Пример можно получить тут.

 Полезные коды Visual BASIC
  • Определение високосного года
Те, кто думают, что високосный год - это тот, который делится без остатка начетыре, глубоко заблуждаются. Так определяется високосный год в Юлианскомкалендаре (старый стиль). А вот в Григорианском (новый стиль) - дляустранения несоответствия календарного и солнечного (астрономического) года100-й год не считается високосным, но каждый 400-й - считается. Ошибкасредней продолжительности года в этом алгоритме составляет всего 26 секунд.
Таким образом, алгоритм определения високосного года выглядит следующимобразом:
Public Function IsLeapYear(iYear As Integer)' Проверка високосного года
If (iYear Mod 4 = 0) And _((iYear Mod 100 <> 0) Or (iYear Mod 400 = 0)) Then
IsLeapYear = True ' високосный
Else
IsLeapYear = False ' не високосный
End If
End Function
Hо можно придумать алгоритм гораздо проще. Еще раз -- что такое високосный год? Правильно, тот, который имеет дату 29 февраля. А значит, работает такой алгоритм:
Function IsLeap (sYear As String) As Integer
IsLeap = FalseIf IsDate ("02/29/" & sYear) Then
IsLeap = True
End Function
Данный алгоритм определения високосного года можноприменять только к Григорианскому календарю, который был введен в действие в1582 году. А до этого момента следует использовать правило Юлианскогокалендаря.

 Практикум на примерах
  • Опубликование работ в Интернет. Программистам... (Часть 3)

Формирование сайта

Перед тем как сесть за формирование собственного сайта, нужно предусмотреть и вариант со "спонсорами". Дело в том, что в Интернете сейчас происходят интересные события. Логотипы крупных интернет-команий стоят сейчас на пути расширения сферы деятельности. Одни понемногу отвоевывают другие ниши в Интернете, другие же после некоторых кризисов на рынке акций решили, что стоит быть более приближенными к земле-матушке. И сейчас можно наблюдать несколько программ, спонсорами или учредителями которых выступают крупные интернет-лейблы. Например, программа MbooM, которая пыталась сделать революцию в музыкальном софте, на загрузочном окне имеет громкую надпись "www.analoguesamples.com". Чувствуете, куда я клоню? Обратившись к владельцам интернет-ресурсов, занимающихся программной тематикой или нужной Вам узкоспециализированной тематикой, можно получить поддержку по рекламе, штат менеджеров, которых не надо нанимать, возможные добавления к техническому заданию и кучу полезных советов, так как данный лейбл собаку съел на распространении софта. При хорошей идее программы можно получить и финансовую поддержку, главное - уметь разговаривать на одном языке. Это один из новых и интересных путей развития распространения результатов программирования. Я однажды встретился с представителем отдела очень крупной корпорации, и он сказал мне тогда очень интересную вещь, которую можно выразить так: "Хоть корпорация крупная и богатая, вводить в штат структуру по производству сайтов мы не будем, так как дешевле обратиться к уже действующим структурам". Он прав, им не надо будет платить за офис, за оборудование, немалые зарплаты людям. Не надо будет думать об увольнениях и прочем. И эта схема действует во всем мире. Поэтому данное предложение от стороннего программиста может оказаться весьма кстати для большой структуры.
Если Вы в вышесказанном не видите никакого смысла или считаете, что, не прибегнув к подобной поддержке, сохраните за собой больше гипотетической прибыли, а также если Вы не добились никакого понимания, уже обратившись к ним, то в самый раз заняться сайтом.

 Вопросы / Ответы
  • Отправитель вопроса Emil
    Ja pishu project na VB dlja interneta i u menja vopros kak vstavit apleti na Java v form VB ili kak vizvat form VB iz HTML faila.
  • Отправитель вопроса Р.Мак
    Наверное я неправильно сформулировал свой вопрос вчера, привожу конкретный пример. Как заменить при вводе пароля буквенные символы на "*".
    Pass = InputBox("Введите пожалуйста пароль.", "Картотека.")
    If Pass = "Крым" Then GoTo 3
    Pass = InputBox("Неправильно. Попробуйте ещё раз!", "Картотека.")
    If Pass = "Крым" Then GoTo 3
    End
    
  • Отправитель вопроса Daniel
    Подскажите, где можно достать информацию по написанию вирусов на VB, включая вирусы в макросах.
  • Отправитель вопроса Владимир Плотников
    Как сделать так, чтобы ComboBox открывалось сразу после того, как на него будет установлен фокус (SetFocus)?
  • Отправитель вопроса Слава Сытник
    Как узнать занят ли СОМ порт или нет.
 Объявления
  • Требуются люди
    Хочу напомнить, что еще пусты многие вакансии рассылки:
    - Рубрика "Рецензия книг"
    - Рубрика "Практикум на примерах"
    Также можно просто присылать коды.

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

<!-- 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
    Отписаться Рейтингуется SpyLog

    В избранное