Часть 1/Часть 2/Часть 3/Часть 4/Часть 5/Часть 6/Часть 7/Часть 8/Часть 9/ Часть 10 /Часть 11/Часть 12/Часть 13/Часть 14/Часть 15
Здоровеньки булы!!! В этом учебнике мы будем учиться программировать
на VB6. Прежде чем приступать к урокам я тебе скажу все достоинства и недостатки
VB, и тебе мож расхочется изучать этот язык, или наоборот. Достоинства: Самое
главное достоинство это то, что много кода писать не надо, т.е. по сравнению с
дядюшкой Си код у VB в несколько раз меньше. Легко запомнить, если Си надо
изучать несколько лет, кряхтя и потея, то VB можно изучить за несколько месяцев.
Если ты захочешь стать Злым Дядькой (админ (системный администратор)), то тебе
без VB не обойтись! Т.к. VB ближайший родственник Microsoft`a. На VB можно
делать сайты(VBS), делать проги для Microsoft Office(Word, Exel), писать
сценарии.
А теперь недостатки: Проги написанные на VB не могут работать
самостоятельно, они в отличие от дядюшки Си, который работает самостоятельно,
держутся на одних подпорках (это Windows`ие библиотеки msvbvm50,и др.) К счастью
во всех 98 и выше версий винда они есть. И проги написанные на VB не работают
кроме Windows`a ни где. В отличее от СИ, на котором и была написанна
операционная система Unix. Но щас уже вышел VB7, который работает во всех
системах.
Мой учебник рассчитан как на юзера, так и на тех, кто уже
программирует на VB. Я не буду заставлять тебя учить тупые определения, а сразу
начнем делать прогу.
Сегодня мы создадим свой первый проект на VB, как я уже говорил, что
мы не будем учить тупые определения, а сразу начнем создавать прогу. Что нам для
этого нужно? Нам нужен редактор по VB5, и выше (если у тебя VB4, то мож тоже
сойдет, но я рекомендую перейти на VB6, т. к у меня был VB5, и мне уже в
последнее время стало стыдно появляться на форумах, чатах и конференциях, если я
там скажу, что у меня VB5, то меня от туда сразу выкинут и еще обосрут...). Если
у тебя нет редактора, то тебе надо изучать WEB языки(HTML, JavaScript, VBScript,
JScript...), в них место редактора можно использовать блокнот. Итак, входим в
редактор VB.
Нажимаем на
Standart EXE, и перед тобой открывается новый мир, мир чудес и волшебства, ой я
походу дела задумался, перед тобой открывается не новый мир, а редактор VB.
В нем мы видим с боку
панель инструментов, форму... Теперь остановимся на этом месте.
Панель инструментов. Она располагается в левой части
окна, в нее входит: Label(метка)
|
![]() |
После ознакомительной части начнем делать свою первую прогу.
Для этого входим в редактор, нажимаем Standart EXE. На форме ставим
кнопку(CommandButton), и метку(Label).Выделите метку, и в окне свойство
объекта, в поле Caption введите: "Моя первая прога". Текст метки должен
измениться. Кликаем по полю Font 2 раза. Открывается окно, в нем мы
выбираем размер шрифта(12),и ставим полужирный. Теперь переходим к
программной части проги. Кликаем два раза на кнопку, и появляется окно с
кодом |
Метод Print аналогичен методу Caption, но только он для формы. Мы
вписываем место label1.caption="Теперь я программер" - Form1.Print "Объект
Print", ты спросишь: "Почему нам не вписать Form1.Caption="Объект Print", потому
что у формы Caption, это не надпись, а заголовок.
Задание:
Твоя задача сделать прогу, у которой при нажатии на кнопку,
срабатывал объект Print, и менялся заголовок формы. Исходник проги можешь
скачать отсюда
Ты наверное мечтал когда-то установить размер надписи, поменять
цвет... Теперь твоя мечта сбылась! Сейчас мы будем делать с надписью все, что
захотим. Входим в VB, кликаем на Standart EXE. На форму помещаем 4 кнопки,1
метку, и наверное хорош. У 1-ой кнопки свойство Caption должно быть равным
"Шрифт", у 2-ой кнопки свойство Caption будет равным "Цвет", у 3-ей "Фон", у
4-ой "Фон Формы". У тебя должно получиться что-то вроде этого:
Теперь код:
Private Sub Command1_Click()
Label1.FontSize =
26 'при нажатии на кнопку 1 у метки будет размер равным
26
End Sub
Private Sub Command2_Click()
Label1.ForeColor =
vbRed 'при нажатии на кнопку 2 цвет текста будет
красным
End Sub
Private Sub
Command3_Click()
Label1.BackColor = vbBlack 'при нажатии на
кнопку 3 цвет фона метки будет черным
End Sub
Private Sub
Command4_Click()
Form1.BackColor = vbWhite 'при нажатии на
кнопку 4 цвет фона формы будет белым
End Sub
Private Sub
Form_Load()
Label1.FontSize = 12 'при загрузке проги у
метки будет размер равным 12
Label1.Caption = "Операции с
текстом" 'при загрузке проги текст метки будет "Операции с
текстом"
Form1.Caption = "Формач" 'при загрузке
проги текст формы будет "Формач"
End Sub
С кнопками мы уже
разобрались, а вот как сделать чтоб действие выполнялось сразу после загрузке
формы, мы еще не знаем. А надо кликнуть 2 раза по форме, и появится такая
фенька:
Private Sub Form_Load()
End Sub
В ней мы вписываем код,
который будет загружаться вместе с формой. Исходник проги можешь скачать отсюда
Ну вот и
все, сегодня мы научились делать всякие штучки с текстом.
Если ты это читаешь, значит ты не ЛАМЕР, т.к., досюда ламер не
дочитал бы. Переменные играют очень важную роль во всех языках, они нужны для
хранения информации. Для объявления переменной тебе надо ввести эту
феньку:
Dim Имя переменной As Тип
Где Имя переменной -
любая буква
Тип - определяется типом данных, которые могут быть значениями
переменной. Короче хорош мудрить! Если переменная - число, то тебе надо писать
вместо типа Integer, Long; если строка, то String; если ты сам не знаешь, что
это, то тебе надо вписать Variant(но эта сучка память жрет только
так)Пример:
Dim qw As Integer (qw=0) ;
Dim A
As String (A="Сука бля ламер")
А теперь сделаем ПРОГУ!!! Войди в
VB(Standart EXE), на форму кинь 4 кнопки, у первой свойство Caption = "Число", у
второй = "Строка", у 3 = "Вариант Строка", у 4 = "Вариант - Число", и текстовое
поле. Вот код:
Dim Hislo As Long 'Объявляем переменную
Hislo для работы с числами
Dim stroka As String
'Объявляем переменную stroka для работы со строками
Dim Varian 'Объявляем переменную Varian для работы с числами и
строками
Private Sub Form_Load() 'При загрузке
формы:
Hislo = 3 'Переменная Hislo будет равна 2(без
ковычек, т.к. это не строка)
stroka = "Сука бля ламер" 'Переменная Stroka будет равна "Сука бля ламер" (с ковычками, т.к.
это строка)
End Sub
Private Sub Command1_Click() 'При нажатии на кнопку:
Text1.Text = Hislo + 2 'Текстовое поле будет равно Hislo + 2(здесь Hislo =
3)
End Sub
Private Sub Command2_Click() 'При
нажатии на кнопку:
Text1.Text = stroka 'Текстовое
поле будет равно stroka(а stroka = "Сука бля ламер")
End
Sub
Private Sub Command3_Click() 'При нажатии на
кнопку:
Varian = "Строка" 'Переменная Varian будет
равна "Строка"(это строка)
Text1.Text = Varian
'Текстовое поле будет равно Varian(здесь Varian = "Строка")
End
Sub
Private Sub Command4_Click() 'При нажатии на
кнопку:
Varian = 5 'Переменная Varian будет равна
5(это число)
Text1.Text = Varian + 3 'Текстовое поле
будет равно Varian(здесь Varian = 5)
End Sub
Из этого примера, ты
видишь, что переменная типа Variant может принимать как и строковое значение,
так и числовое. А переменная Long, только числовое, а String - только строковое.
Так что для начала можешь использовать Variant, но я все равно буду показывать
на Long & String. Исходник проги можешь скачать отсюда Ну я не буду тебя
грузить этими переменными, если ты не понял, то поймешь позже.
Сегодня 27.12.02 и у меня радости полные штаны! Я по химии ПОЛУЧИЛ
4.Я сам не знаю как я это сделал, нифига я ей не ответил, но за что - то она мне
поставила. И от радости я написал статью "Самоуничтожитель компа", если ты
хочешь над кем нибудь прикольнуться, то в ближайшем будущем мы будем делать
всякие приколы (Начиная со 2 - ой части), а если тебе не в терпеж, и ты толком
не зная языка, хочешь над кем нибудь прикольнуться, то можешь прочитать эту статью, в ней
даже не нужен редактор VB(тебе нужен блокнот (текстовой документ), или любой
другой текстовой редактор, а это к счастью дается с виндом. Если у тебя по какой
- то причине не открывается, то в самом начале 3 части эта статья есть. Что - то
я заболтался (это от радости), ну что ты готов сделать свою первую серьезную
прогу? да. Не слышу. Да. Децл погромче. ДА Я ХОЧУ СДЕЛАТЬ КАЛЬКУЛЯТОР!!! Фу бля,
не ори на ухо, ты меня оглушил...
Ну, если ты готов, тогда приступим. Как
всегда входим в VB, кликаем на Standart EXE. Помещаем на форму 3 текстовых поля,
со свойством Text равным: у первых двух без текста, а у 3-его равным 0(это можно
сделать в окне свойство объекта, или написать код
Text1.Text="",Text2.Text="",Text3.Text="0",я рекомендую все свойства писать
только кодом, так ты быстрее освоишь язык), и 5 кнопок со свойством Caption
равным:
У 1-ой CE
У 2-ой X
У 3-ей /
У 4-ой +
У 5-ой --
Как это
делать ты должен знать (в окне свойство объекта, или кодом
Command1.Caption="CE"...,естественно в поле Form onLoad(кликни два раза по
форме))
У тебя должна получиться такая фенька:
Теперь
код:
Private Sub Command1_Click()
Text1.Text = "" 'при нажатии на кнопку CE, у двух текстовых полей свойство Caption
будет равным " ", а 3-его будет равным 0
Text2.Text = ""
Text3.Text
= "0"
End Sub
Private Sub Command2_Click() 'при
нажатии на кнопку *, 1 текстовое поле будет умноженно на второе, и это будет
равно 3-ему
Text3.Text = Text1.Text * Text2.Text
End
Sub
Private Sub Command3_Click() 'при нажатии на кнопку
/, 1 текстовое поле будет разделенно на второе, и это будет равно
3-ему
Text3.Text = Text1.Text / Text2.Text
End Sub
Private
Sub Command4_Click() 'при нажатии на кнопку +, 1 текстовое
поле будет прибавленно ко второму, и это будет равно 3-ему
Text3.Text
= Val(Text1.Text) + Val(Text2.Text)
End Sub
Private Sub
Command5_Click() 'при нажатии на кнопку --, 1-ое текстовое
поле будет отнято от второго, и это будет равно 3-ему
Text3.Text =
Text1.Text - Text2.Text
End Sub
Private Sub
Form_Load()
Form1.Caption = "Калькулятор 2003" 'при
загрузке формы, ее заголовок будет "Калькулятор 2003"
End
Sub
Теперь я хотел бы пояснить что такое Val(при прибавлении см. выше в
коде), это функция, она нужна для того, чтобы комп преобразовывал символ из
строки, в число, т.е., допустим если ты напишешь без нее, то при прибавлении
4+4,у тебя будет не 8,а 44.Ну вроде объяснил. Исходник проги можешь скачать отсюда
В этом разделе я познакомлю тебя с самыми главными функциями, но НЕ
СОВСЕМИ, а только с самыми нужными
1. VAL(строка) 1-ая наша функция вам уже знакома, это
функция Val, как я уже и говорил она нужна для того, чтобы комп преобразовывал
символ из строки, если ты не понял, то не поленись и посмотри вверх, там она
подробна описана.
2. Fix Это функция
превращает (помойму десятичное (у меня по алгебре 3,и я не знаю как это число
называется, спросил у братана, тоже не знает, и я решил назвать его десятичным,
главное чтоб было понятно)) в целое, т.е. если у тебя будет 3.12345 то с этой
функцией будет 3.В VB дробные числа записываются через точку(3.12345),а на
экране появляются через запятую(3,12345).Эта функция пригодится нам очень скоро,
для создания первой игры.
3. Rnd Эта функция
случайных чисел, например в игре сапер, бомбы появляются каждый раз по разному,
это благодаря этой функции. Пример:Text1.Text = Rnd, и сделайте так чтобы при
нажатии на кнопку срабатывал этот код. Если ты был внимателен ты заметил, что
при запуске проги, числа генерируются такие же как при предыдущем и следующем
запуске. Чтобы этого избежать, в Form_Load помести слово Randomize. Чтобы
ограничить эту функцию нам надо записать так: Rnd * 5, и тогда здесь будут
генерироваться числа от 0 до 5, но чтоб он не выдавал дробные числа поставим
функцию Fix: Fix(Rnd*5).Эта функция нам тоже пригодится для игры.
4-5. Asc(Строка) Эта функция нужна для перевода символов в
код Аски, а код аски нам очень пригодиться очень скоро, ща я поясню почему, а
потому, что во всех языках программирования, код аски нужен для доступа к клаве,
но об этом потом. А функция Chr(число) делает все
наоборот, она переводит из аски в символы. И поскольку нам эти функции очень
важны я дам тебе Задание:
Тебе надо сделать
прогу которая переводила любой вписанный символ в код аски, и обратно. Для этого
тебе понадобиться два текстовых поля, 2 кнопки со свойством Caption равным: У
первой Asc, у второй Chr. Да, чуть не забыл, если мы заговорили о текстовых
полях, то я хотел бы тебе сказать, что для текстового поля есть одно свойство,
оно нужно для ограничения вводимых символов, это свойство называется
MaxLength(Его так назвал злой дядька Билл Гейц), так вот нам надо выделить
Текстовое поле, и в окне свойств найти свойство MaxLength, по умолчанию стоит
0,но место него нам можно ввести любое число, и это число будет устанавливать
ограничения вводимых символов (т.е. если мы введем 3,то в текстовое поле нельзя
будет ввести больше 3 символов). После того, как мы сделаем эту прогу, нам надо
ее отложить подальше, до лучших времен, и потом мы будем ей пользоваться.
Исходник проги можешь скачать отсюда
6. Unload Объект Эта функция нужна для выхода. Например,
чтобы выйти из проги надо написать Unload Me, или Unload Form1(также можно
использовать и End)
7. MsgBox Эта функция
нужна для создания сообщений(это тоже самое что и у МелкоСофта Винд 98 постоянно
ругается...). Короче посмотри ниже, и ты все поймешь:
Теперь я тебе децл расскажу, как надо делать такие сообщения.
Посмотри на код, и сам поймешь.
MsgBox "Любой
текст",ЧитКод1+ЧитКод2,"Заголовок"
Где любой текст - это наверное
понятно (у меня: "Вот эта ошибка...")
Читкод1+ЧитКод2-это значение, посмотри
ниже в таблице (у меня 20,16+4)
Заголовок - думаю тоже понятно (у меня: "И не
забудь....")
Теперь Примеры, только
примеры:
MsgBox "Здоровеньки булы",53,"<=Здесь я вписал 53,т.к.
48+5=53"
Ну что понял (а)? Отлично! А как обращаться к кнопкам, которые будут
на форме, будем учиться потом.
8. InputBox Я
опять сразу объяснять не буду, а покажу как это выглядит, чтоб ты был (а) в
курсе дела.
Код:
Dim str As String 'Объявляем переменную str, как строковую
Private Sub
Form_Load() 'При загрузке формы:
str = InputBox("Как
тебя зовут", "Опрос", "Падре") 'Будет появляться
опрос:
Text1.Text = str 'Текстовое поле будет равно
тому значению, которое ты введешь (у нас Падре):
End Sub
Ну вроде и
все. На функциях мы закончим, и перейдем к ОПЕРАТОРАМ.
Любой язык программирования держится только на операторах, без них
любой язык был бы не языком, а набором тупых слов. Первый оператор у нас будет
условный, он наверное самый главный, без него не обойдется ни одна
прога.
If Условие Then
Серия 1
Else
Серия
2
End If
ИЛИ
If Условие Then Серия
1
Если ты изучал какой-нибудь язык(JavaScript, C++, Китайский...), то ты
знаком с этими операторами, а если не изучал, то не знаком. Это я к тому, что
ели ты изучал языки, то ты знаешь как этими операторами пользоваться, и можешь
немного пропустить; а если не изучал ТО ТЕБЕ НАДО ЧИТАТЬ ВСЕ!!!
После
оператора If(истина) следует условие, а после условия следует ключевое слово
Then. Если на месте условия, мы напишем k = 0,то если k = 0, будет выполняется
Серия 1; Else(ложь), если k = 1, а не 0,то будет выполнятся Серия 2.В конце
всегда пишем End If. Вы наверное ничего не поняли, и мы немного попозже сделаем
игру с трехмерной графикой, чтоб разобраться в операторах.
Подробнее об
Условном операторе
Этот подраздел я написал потому, что мне пришло
несколько писем, что я написал про Условный оператор через жопу, и я решил
немного по лучше про него написать, т.к. сам когда - то мучился с этим
оператором(это было еще на JavaScript), и понимаю тех, кто только начал
программировать, и не может врубиться в этот оператор. Если тебе что - то не
понятно пиши, а то мож я еще несколько Шагов написал через жопу. Я немного
напряг мозги, и решил, что, чтобы получше понять этот раздел, надо сделать
прогу. Творим! Открой VB(Standart EXE), на форму кинь 3 кнопки, у первой Caption
= 1, у второй = 2, у 3 - ей = IF. Сделал? Молодец - Холодец. Хе - Хе.
Код:
Dim a As Long 'Обьявляем переменную a для хранения
чисел
Private Sub Command1_Click() 'При нажатии на
кнопку:
a = 1 'a = 1
End
Sub
Private Sub Command2_Click() 'При нажатии на
кнопку:
a = 2 'a = 2
End
Sub
Private Sub Command3_Click() 'При нажатии на
кнопку:
If a = 1 Then 'Если a = 1, то комп выводит
сообщение что была нажата кнопка 1 (т.к. при нажатии на кнопку 1 a =
1):
MsgBox "Нажата кнопка 1", 64, "Ну что врубился?"
End If
If a
= 2 Then 'Если a = 2, то комп выводит сообщение что была
нажата кнопка 2 (т.к. при нажатии на кнопку 2 a = 2):
MsgBox "Нажата
кнопка 2", 64, "Ну что врубился?"
Else 'Если a ни чему не
равно то опять комп выводит сообщение:
MsgBox "Ни чего не нажато", 64,
"Ну что врубился?"
End If
End Sub
Ну что понял? Молодец! Теперь можешь
читать дальше!
Так же действует:
If Условие Then Серия
1
Исходник проги можешь скачать отсюда
Оператор цикла со счетчиком
Оператор цикла со счетчиком
тоже бывает полезен, но до условного ему далеко. Он нужен для того чтоб
выполнять одно действие несколько раз. Например, в проге кодировщик, которую я
от нечего делать написал на днях, без него не обойтись. Он работает очень просто
- функция Len считает сколько букв, и это число передается оператору цикла, и он
за каждый заход кодирует 1 символ, и это продолжается до тех пор, пока не
кончится счетчик (а он равен количеству букв(Len)).
For Счетчик =
Начальное Значение To Конечное значение
Действия
Next
Счетчик
Например:
Private Sub Command1_Click()
'При нажатии на кнопку:
For i = 0 To 4 'Действие
будет обновляться 5 раз
MsgBox ""
Next i
End
Sub
Оператор Select Case
С помощью
этого оператора можно заменить условный оператор, это удобнее(т.к. меньше кода
надо писать), и я буду рассматривать некоторые проги на 2-ух операторах(Case
& IF). Вот так.
Select Case Переменная или
вырожение
Case Значение 1
Действие
Case Значение
1
Действие
...
Case Else Действие в случае несовпадения End
Select
Теперь сделаем такую же прогу как и в условном операторе.
Войди в VB(Standart EXE), на форму кинь 1 кнопку, Caption = Case. Код:
Dim a
As String 'Обьявляем переменную a для хранения
символов
Private Sub Command1_Click()
a = InputBox("Как тебя
зовут", "Опрос")
Select Case a
Case "Падре" 'Если a =
"Падре", то комп выводит сообщение, что этот ник уже забит
MsgBox
"Падре - это я", 64, "Ну что врубился?" Case "Малышь" 'Если a
= "Малышь", то комп выводит сообщение
MsgBox "Это правда?", 64, "Ну
что врубился?"
Case Else 'Если a равно чему - то другому то
комп выводит сообщение
MsgBox "Какой - то неизвестный у тебя ник", 64,
"Ну что врубился?"
End Select
End Sub
Теперь я просто обязан дать тебе
задание: Сделай тоже самое, что мы делали с оператором Case(сверяли имя), только
на операторе IF, и наоборот. Делай. Исходник проги можешь скачать отсюда
Ну, в VB есть
еще и оператор цикла с условием, но он пока нам не нужен(мож как - нибудь
потом...).
Входим в VB, нажимаем Standart EXE. На форму кидаем 2 кнопки, и 1
текстовое поле. У первой кнопки свойство Caption будет "Загадай число", у второй
"Ввод"; у текстового поля свойство Caption уберите. У вас получится такая
фенька:
Код:
'Здесь вместо
sas,qw,qw2 ты можешь ввести любые буквы, только не забудь поменять их во всем
коде (например, если ты вместо sas объявишь bla, то тебе придется везде менять
sas на bla)
Dim sas As Integer 'Объявляем переменную
для хранения чисел
Dim qw As Integer
Dim qw2 As String 'Объявляем переменную для хранения символов
Private Sub
Command1_Click() 'При нажатии на кнопку "Загадай
число"
Randomize 'Срабатывает оператор случайных
чисел, чтоб при запуске проги генерировались разные числа
sas =
Fix(Rnd * 100) 'уравниваем случайное число
qw =
0
Text1.Text = ""
End Sub
Private Sub Command2_Click() 'При нажатии на кнопку "Ввод"
qw = qw + 1 'Включаем счетчик, каждый раз при нажатии на кнопку к переменной qw
будет прибавляться 1
If qw <= 3 Then 'Если qw
будет < или = 3 то
qw2 = "Чемпион" 'qw2="Чемпион"
End If
If qw >= 5 Then 'Это все аналогично
qw2 = "Профи"
End If
If qw >=
7 Then
qw2 = "Салага"
End If
If qw >= 10 Then
qw2 =
"Ламер"
End If
If Val(Text1.Text) = sas Then 'Если
Text1.Text=sas то
MsgBox "Ты победил за " & qw & " раз " +
qw2, 32 'Комп выдает сообщение о кол - ве нажатых раз на
кнопку т.е. qw
End If
If Val(Text1.Text) < sas Then
MsgBox
"Децл Побольше", 32
End If
If Val(Text1.Text) > sas Then
MsgBox
"Децл Поменьше", 32
End If
End Sub
Private Sub
Form_Load()
Form1.Caption = "Угадай число"
End Sub
Отлично! Теперь ты
Гейм - Мейкер. Ты сделал первую игру, хоть и она очень простая, но это на первое
время. Следующая наша игра PinBall 2003. Исходник проги можешь скачать отсюда
Как я и обещал, сегодня мы будем делать такую феньку, а вот какую я
тебе не скажу, сам должен помнить. Ладно, так и быть напомню, мы будем делать
обращение к кнопкам, которые находятся на ошибке MsgBox. автор учебника: Падре
Нам дается
ошибка:
MsgBox "Тебя зовут Падре?", 68, "Хей!!!"
Теперь не
поленись и посмотри на Table:
В этой таблице ты видишь все
кнопки и их значения. А теперь смотри как надо пользоваться этой
таблицей.
Private Sub Command1_Click() 'При нажатии на
кнопку
q = MsgBox("Тебя зовут Падре?", 68, "Хей!!!") 'Тебе задают вопрос (Не забудь про скобки)
If q = 6
Then ' Если q = 6 то (По таблице 6 это Да)
MsgBox
"Не пиз...и, Падре - Я", 16, "Врун!!!"
End If
If q = 7 Then
MsgBox "Я
тебе верю", 64
End If
End Sub
Все! Наконец закончил! Теперь можешь
начинать читать Вторую часть, в ней ты
сделаешь свой календарь, и научишься работать с мышью. Если у тебя есть
какие-нибудь вопросы, пожелания и т.д., то оставляй свои сообщения на форуме,
гостевой книге(моего сайта vbstreets.narod.ru), или пиши в наглую на
E-mail: padre03@mail.ru, я на них
обязательно отвечу. И если ты зайдешь на мой сайт, кликни плиз по банеру
Porta(сиреневый), мне за это немного бабла отвалется(2 цента). И если ты
захочешь поддержать Отечественного производителя(т.е. Меня), то кликай по банеру
раз в месяц. А если ты очень богатый, то не просто кликни, а еще что - нибудь
купи.
Дата создания: 6 января 2003
года
Место под Банеры |
![]() |