Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Даже не знаю с чего начать

2.0K
28 февраля 2004 года
Andi_SPAWN
69 / / 28.02.2004
Я новичок, теорию подчитал практики очень мало, среди всех моих знакомых не скем посоветоватся кто может помочь стать на ноги? Даже не знаю с чего начать!
Страницы:
266
31 марта 2004 года
mhaturov
901 / / 23.10.2003
Цитата:
Originally posted by mhaturov


ОК:)


Ну как дела с задачкой?:P

2.0K
12 апреля 2004 года
Andi_SPAWN
69 / / 28.02.2004
Цитата:
Originally posted by mhaturov

Ну как дела с задачкой?:P




Привет, наконец-то я выделил время и дописал задачку №3.
Через брак времени я не описал обработчик ошибок, не установил максимальные и минимальные размеры елементов
и формы и не предусмотрел записи инишнике информации о изменение растояний между елементами, но это
как сам понимаеш не качество а количество ведь принцип тот же. Я думаю что и код не совсем оптимален но
тем не менее програма рабочая!!! Как приятно когда достигаеш поставленую цель. Пост получился не маленький
но я бы хотел чтоб ты взглянул!



Private dblHorizontally As Double 'Êîýôèöèåíò ðàñòîÿíèÿ ïî ãîðèçîíòàëè
Private dblVerticale As Double 'Êîýôèöèåíò ðàñòîÿíèÿ ïî âåðòèêàëè
Private dblHorizontallyControl_1 As Double, dblHorizontallyControl_2 As Double 'Êîýôèöèåíò ðàçìåðà Width åëåìåíòîâ
Private dblVerticaleControl_1 As Double, dblVerticaleControl_2 As Double 'Êîýôèöèåíò ðàçìåðà Higth åëåìåíòîâ
Public PathINI As String
Private form_Width As Single, form_Height As Single
Private Button_Width As Single, Button_Height As Single 'Çíà÷åíèÿ ðàçìåðîâ åëåìåíòîâ è ôîðìè ïîñëå ðåñàéçà
Private Combo_Width As Single, Combo_Height As Single
Private list_Width As Single, List_Height As Single
Private Text_Width As Single, Text_Height As Single
Option Explicit

Private Sub Form_Load() 'Èíèöèàëèçàöèÿ
PathINI = App.Path & "\Resize.ini"

If Dir$(PathINI) = "" Then
frmResize.Height = 6000: frmResize.Width = 9000
cmdNumber(1).Height = 500: cmdNumber(1).Width = 1500
cmdNumber(2).Height = 500: cmdNumber(2).Width = 1500
cmdNumber(3).Height = 500: cmdNumber(3).Width = 1500
txtText.Height = 500: txtText.Width = 2000
cobCombo.Width = 2000
lstList.Height = 450: lstList.Width = 2000

'Ïðèâÿçêà ðàñòîÿíèé ìåæäó åëåìåíòàìè ê ðàçìåðàì ôîðìû
cmdNumber(1).Left = 1560: cmdNumber(1).Top = 960
cmdNumber(2).Left = 1560: cmdNumber(2).Top = 2280
cmdNumber(3).Left = 1560: cmdNumber(3).Top = 3600
txtText.Left = 4383: txtText.Top = 960
cobCombo.Left = 4383: cobCombo.Top = 2280
lstList.Left = 4383: lstList.Top = 3600
Else 'Ñ÷èòûâàíèå ðàçìåðîâ åëåìåíòîâ ñ ini-ôàéëà
frmResize.Width = sReadINI(PathINI, "Form.Size", "Width")
frmResize.Height = sReadINI(PathINI, "Form.Size", "Height")
cmdNumber(1).Width = sReadINI(PathINI, "Control.Size", "Button.Width")
cmdNumber(1).Height = sReadINI(PathINI, "Control.Size", "Button.Height")
cmdNumber(2).Width = sReadINI(PathINI, "Control.Size", "Button.Width")
cmdNumber(2).Height = sReadINI(PathINI, "Control.Size", "Button.Height")
cmdNumber(3).Width = sReadINI(PathINI, "Control.Size", "Button.Width")
cmdNumber(3).Height = sReadINI(PathINI, "Control.Size", "Button.Height")
txtText.Width = sReadINI(PathINI, "Control.Size", "Text.Width")
txtText.Height = sReadINI(PathINI, "Control.Size", "Text.Height")
lstList.Width = sReadINI(PathINI, "Control.Size", "List.Width")
lstList.Height = sReadINI(PathINI, "Control.Size", "List.Height")
cobCombo.Width = sReadINI(PathINI, "Control.Size", "Combo.Width")
End If
dblHorizontallyControl_1 = cmdNumber(1).Width / frmResize.Width
dblHorizontallyControl_2 = txtText.Width / frmResize.Width
dblVerticaleControl_1 = txtText.Height / frmResize.Height
dblVerticaleControl_2 = cobCombo.Height / frmResize.Height
dblHorizontally = (txtText.Left - cmdNumber(1).Left) / frmResize.Width
dblVerticale = (cmdNumber(2).Top - cmdNumber(1).Top) / frmResize.Height
End Sub

Private Sub Form_Resize()
Const minHorizontally As Long = 2200 'Ìèíèìàëüíûå ðàñòîÿíèÿ ìåæäó åëåìåíòàìè ïî ãîðèçîíòàëå
Const minVerticale As Long = 1000 'Ìèíèìàëüíûå ðàñòîÿíèÿ ìåæäó åëåìåíòàìè ïî âåðòèêàëå

'Ðèñàéç ïî ãîðèçîíòàëå
txtText.Left = cmdNumber(1).Left + frmResize.Width * dblHorizontally
If txtText.Left - cmdNumber(1).Left < minHorizontally Then _
txtText.Left = cmdNumber(1).Left + minHorizontally
If txtText.Left - cmdNumber(1).Left = minHorizontally Then
cmdNumber(1).Width = dblHorizontallyControl_1 * frmResize.Width
txtText.Width = dblHorizontallyControl_2 * frmResize.Width
End If

cobCombo.Left = cmdNumber(2).Left + frmResize.Width * dblHorizontally
If cobCombo.Left - cmdNumber(2).Left < minHorizontally Then _
cobCombo.Left = cmdNumber(2) + minHorizontally
If cobCombo.Left - cmdNumber(2).Left = minHorizontally Then
cmdNumber(2).Width = dblHorizontallyControl_1 * frmResize.Width
cobCombo.Width = dblHorizontallyControl_2 * frmResize.Width
End If

lstList.Left = cmdNumber(3).Left + frmResize.Width * dblHorizontally
If lstList.Left - cmdNumber(3).Left < minHorizontally Then _
lstList.Left = cmdNumber(3).Left + minHorizontally
If lstList.Left - cmdNumber(3).Left = minHorizontally Then
cmdNumber(3).Width = dblHorizontallyControl_1 * frmResize.Width
lstList.Width = dblHorizontallyControl_2 * frmResize.Width
End If

'&#208;&#232;&#241;&#224;&#233;&#231; &#239;&#238; &#226;&#229;&#240;&#242;&#232;&#234;&#224;&#235;&#229;
cmdNumber(2).Top = cmdNumber(1).Top + frmResize.Height * dblVerticale
If cmdNumber(2).Top - cmdNumber(1).Top < minVerticale Then
cmdNumber(2).Top = cmdNumber(1).Top + minVerticale
End If
cmdNumber(3).Top = cmdNumber(2).Top + frmResize.Height * dblVerticale
If cmdNumber(3).Top - cmdNumber(2).Top < minVerticale Then _
cmdNumber(3).Top = cmdNumber(2).Top + minVerticale
If cmdNumber(2).Top - cmdNumber(1).Top = minVerticale Then
cmdNumber(1).Height = dblVerticaleControl_1 * frmResize.Height
cmdNumber(2).Height = dblVerticaleControl_1 * frmResize.Height
cmdNumber(3).Height = dblVerticaleControl_1 * frmResize.Height
End If

cobCombo.Top = txtText.Top + frmResize.Height * dblVerticale
If cobCombo.Top - txtText.Top < minVerticale Then
cobCombo.Top = txtText.Top + minVerticale
End If
lstList.Top = cobCombo.Top + frmResize.Height * dblVerticale
If lstList.Top - cobCombo.Top < minVerticale Then _
lstList.Top = cobCombo.Top + minVerticale
If cobCombo.Top - txtText.Top = minVerticale Then
txtText.Height = dblVerticaleControl_1 * frmResize.Height
lstList.Height = dblVerticaleControl_1 * frmResize.Height
End If
form_Width = CSng(frmResize.Width): form_Height = CSng(frmResize.Height)
Button_Width = CSng(cmdNumber(3).Width): Button_Height = CSng(cmdNumber(3).Height)
Combo_Width = CSng(cobCombo.Width)
list_Width = CSng(lstList.Width): List_Height = CSng(lstList.Height)
Text_Width = CSng(txtText.Width): Text_Height = CSng(txtText.Height)
End Sub

Private Sub Form_Terminate()
Dim intResult As Byte

intResult = MsgBox("Сохранить последнее изьенение?", _
vbOKCancel + vbApplicationModal + vbExclamation, "&#194;&#237;&#232;&#236;&#224;&#237;&#232;&#229;!")
If intResult = 1 Then
Call WriteINI(PathINI, "Form.Size", "Width", form_Width)
Call WriteINI(PathINI, "Form.Size", "Height", form_Height)
Call WriteINI(PathINI, "Control.Size", "Button.Width", Button_Width)
Call WriteINI(PathINI, "Control.Size", "Button.Height", Button_Height)
Call WriteINI(PathINI, "Control.Size", "Combo.Width", Combo_Width)
Call WriteINI(PathINI, "Control.Size", "Text.Height", Text_Height)
Call WriteINI(PathINI, "Control.Size", "Text.Width", Text_Width)
Call WriteINI(PathINI, "Control.Size", "List.Height", List_Height)
Call WriteINI(PathINI, "Control.Size", "List.Width", list_Width)
End If
End Sub

2.0K
12 апреля 2004 года
Andi_SPAWN
69 / / 28.02.2004
Цитата:
Originally posted by mhaturov

Ну как дела с задачкой?:P




Модуль обработки ini-файла

'API объявления
Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" _
(ByVal lpApplicationName As String, _
ByVal lpKeyName As Any, _
ByVal lpDefault As String, _
ByVal lpReturnedString As String, _
ByVal nSize As Long, _
ByVal lpFileName As String) As Long

Declare Function WritePrivateProfileString Lib "kernel32" Alias "WritePrivateProfileStringA" _
(ByVal lpApplicationName As String, _
ByVal lpKeyName As Any, _
ByVal lpString As Any, _
ByVal lpFileName As String) As Long
Option Explicit

Public Function sReadINI(strINIFile As String, strAppName As String, strKeyName As String) As String
Dim strTemp As String * 256

strTemp = Space$(256)
Call GetPrivateProfileString(strAppName, strKeyName, vbNullString, strTemp, 255, strINIFile)
sReadINI = Trim(strTemp)
End Function

Public Sub WriteINI(strINIFile As String, strAppName As String, strKeyName As String, ByVal strValue As String)
Dim fso As New FileSystemObject

If fso.FileExists(frmResize.PathINI) = False Then fso.CreateTextFile (frmResize.PathINI)
Call WritePrivateProfileString(strAppName, strKeyName, strValue, strINIFile)
End Sub




Если есть замечания или еще что-нибуть буду очен благодарен, если же нет то можна ехать дальше!!!

P.S.

1)Чем отличается Chr(), Space(), Left(), Rigth(), Dir() и т.д. от Chr$(), Space$(), Left$(), Rigth$(), Dir$(), я так понимаю что ни чем???

2) Не понимаю до конца предназначение параметра “lpDefault, lpReturnedString, nSize” в API функции GetPrivateProfileString, ты можеш мне внятно объяснить?

3) Зачем ты в своем коде для ReadINI присваиваеш значение “пусто” (vbNullString)

4) Что за тип даных “Any”

266
13 апреля 2004 года
mhaturov
901 / / 23.10.2003
Цитата:
Originally posted by Andi_SPAWN



Модуль обработки ini-файла

'API объявления
Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" _
(ByVal lpApplicationName As String, _
ByVal lpKeyName As Any, _
ByVal lpDefault As String, _
ByVal lpReturnedString As String, _
ByVal nSize As Long, _
ByVal lpFileName As String) As Long

Declare Function WritePrivateProfileString Lib "kernel32" Alias "WritePrivateProfileStringA" _
(ByVal lpApplicationName As String, _
ByVal lpKeyName As Any, _
ByVal lpString As Any, _
ByVal lpFileName As String) As Long
Option Explicit

Public Function sReadINI(strINIFile As String, strAppName As String, strKeyName As String) As String
Dim strTemp As String * 256

strTemp = Space$(256)
Call GetPrivateProfileString(strAppName, strKeyName, vbNullString, strTemp, 255, strINIFile)
sReadINI = Trim(strTemp)
End Function

Public Sub WriteINI(strINIFile As String, strAppName As String, strKeyName As String, ByVal strValue As String)
Dim fso As New FileSystemObject

If fso.FileExists(frmResize.PathINI) = False Then fso.CreateTextFile (frmResize.PathINI)
Call WritePrivateProfileString(strAppName, strKeyName, strValue, strINIFile)
End Sub




Если есть замечания или еще что-нибуть буду очен благодарен, если же нет то можна ехать дальше!!!

P.S.

1)Чем отличается Chr(), Space(), Left(), Rigth(), Dir() и т.д. от Chr$(), Space$(), Left$(), Rigth$(), Dir$(), я так понимаю что ни чем???

2) Не понимаю до конца предназначение параметра “lpDefault, lpReturnedString, nSize” в API функции GetPrivateProfileString, ты можеш мне внятно объяснить?

3) Зачем ты в своем коде для ReadINI присваиваеш значение “пусто” (vbNullString)

4) Что за тип даных “Any”


Значит так.
В принципе, хорошо, только я бы сделал так:
Переменные, в которых ты хранишь положения контролов, я бы объявлял локально прямо в процедуре ресайза.
Ключи бы обзывал, привязываяст к контрола, тоесть, например, для контрола I, это имя ключа выглядело так:
ИмяКонтрола & Str$(i) & Width
Тоесть, при чтении из ниншника, ты бы просто передавал бы ключь, соответствующий паре Контрол - параметр и все. Например:
sReadINI(PathINI, "Control.Size", Button.Name & Str$(i) & "Width")
Тоесть, ты бы имел уникальные записи в инишнике для любого контрола, что универсальнеее и не привязывает тебя к количеству контролов на форме.
Писал бы я так. Например

 
Код:
Dim I as long
Dim Ctrl as Control 'МАХ Не отвечаю за верность синтаксиа, но примерно так
 For Ech Ctrl Im Me
  WriteINI(PathINI, "Control.Size", Ctrl.Name & Str$(Ctrl.Index) & Ctrl.Width, Ctrl.Width)
 Next

Может, синтаксис тут не верный, но идею, думаю, ты понял.
Теперь остальное:
Str$(0) = "0", Str(0) = VbNullString. К тому же считается, что $ - функции работают быстрее. Думаю, тут всё понятно.
lpDefault - то, что будет возвращаться, если запись не найдена (значение по умолчанию),
lpReturnedString - В какую переменную писать возвращаемое значение,
nSize - размер буфера, который нужно выделить для передачи значения из иннишника
Отсюда, думаю, понятно, зачем VbNullString присваивается (чтобы у меня на выходе было пустое значение, если ничего в ниншние не найдено)
Any - аналог Variant. Дело в том, что идёт обращение к функции, подобной функции C, а там немного другие типы и синтаксис.
Извиняюсь, что так мало написал - просто очень сейчас загружен и немного некогда...
Задачку подкину завтра. Пока попробуй переделать в соответствии с замечаниями.
2.0K
14 апреля 2004 года
Andi_SPAWN
69 / / 28.02.2004
Цитата:
Originally posted by mhaturov

Значит так.
В принципе, хорошо, только я бы сделал так:
Переменные, в которых ты хранишь положения контролов, я бы объявлял локально прямо в процедуре ресайза.
Ключи бы обзывал, привязываяст к контрола, тоесть, например, для контрола I, это имя ключа выглядело так:
ИмяКонтрола & Str$(i) & Width
Тоесть, при чтении из ниншника, ты бы просто передавал бы ключь, соответствующий паре Контрол - параметр и все. Например:
sReadINI(PathINI, "Control.Size", Button.Name & Str$(i) & "Width")
Тоесть, ты бы имел уникальные записи в инишнике для любого контрола, что универсальнеее и не привязывает тебя к количеству контролов на форме.
Писал бы я так. Например
 
Код:
Dim I as long
Dim Ctrl as Control 'МАХ Не отвечаю за верность синтаксиа, но примерно так
 For Ech Ctrl Im Me
  WriteINI(PathINI, "Control.Size", Ctrl.Name & Str$(Ctrl.Index) & Ctrl.Width, Ctrl.Width)
 Next

Может, синтаксис тут не верный, но идею, думаю, ты понял.
Теперь остальное:
Str$(0) = "0", Str(0) = VbNullString. К тому же считается, что $ - функции работают быстрее. Думаю, тут всё понятно.
lpDefault - то, что будет возвращаться, если запись не найдена (значение по умолчанию),
lpReturnedString - В какую переменную писать возвращаемое значение,
nSize - размер буфера, который нужно выделить для передачи значения из иннишника
Отсюда, думаю, понятно, зачем VbNullString присваивается (чтобы у меня на выходе было пустое значение, если ничего в ниншние не найдено)
Any - аналог Variant. Дело в том, что идёт обращение к функции, подобной функции C, а там немного другие типы и синтаксис.
Извиняюсь, что так мало написал - просто очень сейчас загружен и немного некогда...
Задачку подкину завтра. Пока попробуй переделать в соответствии с замечаниями.





Привет! Спасибо за критику, но я так понимаю, что твое замечание справедливо для масива елементов, я правильно понял?

Что касается работи с инишником, то еще раз спасибо за объяснение значения переменных теперь все понятно.

По поводу функции $ не совсем въехал, ты говориш, что Str$(0)="0", Str(0)=vbNullString значит Str$() - возвращает значение??? Тогда объясни какая разница в остальных ф-ях: Chr(), Space(), Left(), Rigth(), Dir() и т.д. от Chr$(), Space$(), Left$(), Rigth$(), Dir$() или дело только в скорости роботі???

266
14 апреля 2004 года
mhaturov
901 / / 23.10.2003
Цитата:
Originally posted by Andi_SPAWN




Привет! Спасибо за критику, но я так понимаю, что твое замечание справедливо для масива елементов, я правильно понял?

Что касается работи с инишником, то еще раз спасибо за объяснение значения переменных теперь все понятно.

По поводу функции $ не совсем въехал, ты говориш, что Str$(0)="0", Str(0)=vbNullString значит Str$() - возвращает значение??? Тогда объясни какая разница в остальных ф-ях: Chr(), Space(), Left(), Rigth(), Dir() и т.д. от Chr$(), Space$(), Left$(), Rigth$(), Dir$() или дело только в скорости роботі???


Да, именно так.
И вот что я ещё вчера подумал.
В стоей проге ты можешь привязывать через коэфициенты размеры и положение всех объектов к какому-либо одному элементу, например, параметрам размеров формы. И только размеры этого элемента сохранять, а остальное вычислять "на лету" - у меня изначально была такая идея, но вчера я в запарке был (как, впрочем, и сегодня буду), ну и забыл эту мысль описать.

319
14 апреля 2004 года
xelos
577 / / 27.02.2003
Цитата:
Originally posted by mhaturov

Да, именно так.
И вот что я ещё вчера подумал.
В стоей проге ты можешь привязывать через коэфициенты размеры и положение всех объектов к какому-либо одному элементу, например, параметрам размеров формы. И только размеры этого элемента сохранять, а остальное вычислять "на лету" - у меня изначально была такая идея, но вчера я в запарке был (как, впрочем, и сегодня буду), ну и забыл эту мысль описать.


НАРОД, давайте большой код во вложенных файлах писать???

266
14 апреля 2004 года
mhaturov
901 / / 23.10.2003
Цитата:
Originally posted by xelos

НАРОД, давайте большой код во вложенных файлах писать???


:) :D ;)
Вполне согласен.

266
15 апреля 2004 года
mhaturov
901 / / 23.10.2003
Новая задачка.
Есть такая вещь, наверное знаешь, как транслитератор.
И есть такая вещь, как забывание переключить раскладку...
Вобщем так, тут есть пример программы транслитератора в одной из тем - я уже скидывал, но ты, думаю, напишешь вполне его сам. Поэтому, пока не закончишь, не подглядывай.;)
Сделай прогу, которая будет:
1. Иметь 2 текстовых поля. В одно можно будет вносить текст пользователя, а во втором будет отображаться результат обработки текста.
2. 5 кнопок:
- транслитерировать с алглийского на русский;
- транслитерировать с русского на английский;
- исправить текст, при переключении раскладки на латынь, но наборе русских букв (тоесть, исправить случай, когда не переключил раскладку, но начал набирать текст на другом языке - знаешь, так часто бывает);
- аналогично, но только набор русскими буквами по-англиски;
- выход.
3. 1 Чекбокс в виде западающей кнопки. В случае, если он нажат, то действие, которое выбрано кнопками, будет выполняться "на лету". Например. Если чекбокс отжат, то ты набирвешь, или копируешь в текстбокс текст, а потом нажимаешь, например, кнопку транслитерации и во втором текстбоксе появляется транслит. Если же нажат чекбокс, то нажимаешь енопку транслитерировать, начинаешь набирать в первом текстбоксе текст и сразу же во втором появляется транслит.
4. Метку, в которой будет выводиться описание режима работы. тоесть, например, для второго случая там будет написано:
"Транслитерация с русского на латынь.
Режим моментальной транслитерации"
ну или типа того - чтобы ты мог видеть, в каком режиме прога работает. Лучше даже, чтобы меточка ещё и цвет меняла в зависимости от режима работы.
При этом прога должна запоминать свои размеры при закрытии свои размеры. Ну как в предыдущей задаче.
Описание транслита Бика можно посмотреть здесь:
http://zhurnal.lib.ru/g/gospitalx_d_p/translit_bika.shtml
НО. Там хоть и есть код, кое-гдк есть ошибка!
Потестируй его хорошенько. Если не найдёшь ошибки, то качни мой исходник на
http://forum.codenet.ru/showthread.php?threadid=15810&pagenumber=3 и сравни модуль Language.
Удачи!
Задачка, думаю, для тебя не очень сложная, но интересная должна быть, и, главное, полезная в быту.;)
Исправление забывания переключения раскладки попробуй реализовать не путём сопоставления букв, а заменой кодов. Не знаю, получится ли, но, думаю, если что, зависимость между кодами символов найти можно. Но если нельзя - делай путём сопоставления букв...
P.S. Готовые исходники заархивируй и выложи сюда в виде вложения к сообщению - так легче будет их разбирать.
2.0K
16 апреля 2004 года
Andi_SPAWN
69 / / 28.02.2004
Цитата:
Originally posted by mhaturov
Новая задачка.
Есть такая вещь, наверное знаешь, как транслитератор.
И есть такая вещь, как забывание переключить раскладку...
Вобщем так, тут есть пример программы транслитератора в одной из тем - я уже скидывал, но ты, думаю, напишешь вполне его сам. Поэтому, пока не закончишь, не подглядывай.;)
Сделай прогу, которая будет:
1. Иметь 2 текстовых поля. В одно можно будет вносить текст пользователя, а во втором будет отображаться результат обработки текста.
2. 5 кнопок:
- транслитерировать с алглийского на русский;
- транслитерировать с русского на английский;
- исправить текст, при переключении раскладки на латынь, но наборе русских букв (тоесть, исправить случай, когда не переключил раскладку, но начал набирать текст на другом языке - знаешь, так часто бывает);
- аналогично, но только набор русскими буквами по-англиски;
- выход.
3. 1 Чекбокс в виде западающей кнопки. В случае, если он нажат, то действие, которое выбрано кнопками, будет выполняться "на лету". Например. Если чекбокс отжат, то ты набирвешь, или копируешь в текстбокс текст, а потом нажимаешь, например, кнопку транслитерации и во втором текстбоксе появляется транслит. Если же нажат чекбокс, то нажимаешь енопку транслитерировать, начинаешь набирать в первом текстбоксе текст и сразу же во втором появляется транслит.
4. Метку, в которой будет выводиться описание режима работы. тоесть, например, для второго случая там будет написано:
"Транслитерация с русского на латынь.
Режим моментальной транслитерации"
ну или типа того - чтобы ты мог видеть, в каком режиме прога работает. Лучше даже, чтобы меточка ещё и цвет меняла в зависимости от режима работы.
При этом прога должна запоминать свои размеры при закрытии свои размеры. Ну как в предыдущей задаче.
Описание транслита Бика можно посмотреть здесь:
http://zhurnal.lib.ru/g/gospitalx_d_p/translit_bika.shtml
НО. Там хоть и есть код, кое-гдк есть ошибка!
Потестируй его хорошенько. Если не найдёшь ошибки, то качни мой исходник на
http://forum.codenet.ru/showthread.php?threadid=15810&pagenumber=3 и сравни модуль Language.
Удачи!
Задачка, думаю, для тебя не очень сложная, но интересная должна быть, и, главное, полезная в быту.;)
Исправление забывания переключения раскладки попробуй реализовать не путём сопоставления букв, а заменой кодов. Не знаю, получится ли, но, думаю, если что, зависимость между кодами символов найти можно. Но если нельзя - делай путём сопоставления букв...
P.S. Готовые исходники заархивируй и выложи сюда в виде вложения к сообщению - так легче будет их разбирать.





Привет! Да задачка интересная и думаю что объемная. На это нужно время, буду работать с максимальной скоростю, у меня тоже сейчас напряг со временем через роботу. Обищаю в ичходники не смотреть а сделать все своиьи силами! А что касаэтся моего вопроса про "$", напиши что нибуть!
Жду!

P.S. Спасибо за задачку!!!

266
16 апреля 2004 года
mhaturov
901 / / 23.10.2003
Цитата:
Originally posted by Andi_SPAWN




Привет! Да задачка интересная и думаю что объемная. На это нужно время, буду работать с максимальной скоростю, у меня тоже сейчас напряг со временем через роботу. Обищаю в ичходники не смотреть а сделать все своиьи силами! А что касаэтся моего вопроса про "$", напиши что нибуть!
Жду!

P.S. Спасибо за задачку!!!


Так, честно говоря, после твоего вопроса я расскопал гору литературы, перерыл MSDN... Но, увы, единственное, чем простые и $ - функции отличаются, это форматами на выходе (поэкспериментируй с 0 и датами), да скоростью выполнения.
Может быить, какие-то из функций оставлены для обратной совместимости с предыдущими версиями VB, но об этом, увы, я ничего не нашёл...P(

2.0K
03 мая 2004 года
Andi_SPAWN
69 / / 28.02.2004
Цитата:
Originally posted by mhaturov

Так, честно говоря, после твоего вопроса я расскопал гору литературы, перерыл MSDN... Но, увы, единственное, чем простые и $ - функции отличаются, это форматами на выходе (поэкспериментируй с 0 и датами), да скоростью выполнения.
Может быить, какие-то из функций оставлены для обратной совместимости с предыдущими версиями VB, но об этом, увы, я ничего не нашёл...P(




Привет! Такой вопрос, как можно и можно ли вообще объявить масив в котором будет весь список елементов, например:

Dim arrA(1 To 5) as Integer - это обычное объявление, а я хочу

Dim arrA(1,2,3,4,5) as Integer

Запятая здесь условный знак, потому что когда это сделать то програма воспринимает как

Dim arrA(0 To 1,0 To 2,0 o 3, и т.д.) as Integer

Я это хочу реализовать в транслитераторе!

266
06 мая 2004 года
mhaturov
901 / / 23.10.2003
Цитата:
Originally posted by Andi_SPAWN



Привет! Такой вопрос, как можно и можно ли вообще объявить масив в котором будет весь список елементов, например:

Dim arrA(1 To 5) as Integer - это обычное объявление, а я хочу

Dim arrA(1,2,3,4,5) as Integer

Запятая здесь условный знак, потому что когда это сделать то програма воспринимает как

Dim arrA(0 To 1,0 To 2,0 o 3, и т.д.) as Integer

Я это хочу реализовать в транслитераторе!


Ну массив можно объявить только:
dim Arr(размерность массива) as тип
Например
DIM ARR(3) AS Long
или
DIM ARR() AS Long - объявление массива без размерности, а потом:
ReDim ARR(нужная размерность),
Но можно и так:
Dim Arr as Тип
Arr = Array(данные для массива через запятую)

2.0K
12 мая 2004 года
Andi_SPAWN
69 / / 28.02.2004
Цитата:
Originally posted by mhaturov

Ну массив можно объявить только:
dim Arr(размерность массива) as тип
Например
DIM ARR(3) AS Long
или
DIM ARR() AS Long - объявление массива без размерности, а потом:
ReDim ARR(нужная размерность),
Но можно и так:
Dim Arr as Тип
Arr = Array(данные для массива через запятую)




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

266
12 мая 2004 года
mhaturov
901 / / 23.10.2003
Цитата:
Originally posted by Andi_SPAWN



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


ОК. Я жду...;) Блин, была для тебя задачка какая-то, но забыл... Ну ничего, как решишь текущую, так вспомню, или новую придумаю...

2.0K
29 мая 2004 года
Andi_SPAWN
69 / / 28.02.2004
Цитата:
Originally posted by mhaturov

ОК. Я жду...;) Блин, была для тебя задачка какая-то, но забыл... Ну ничего, как решишь текущую, так вспомню, или новую придумаю...





Привет! Давно я не был в NETе, задачка почти готова я тебе на днях сброшу. У меня такая проблема, мой VB6 не имеет MSDN бибилиотеки, а без справки сам знаеш не очень удобно работать. Диск с MSDN я найти не могу, может поможеш найти?
Можно ли скачать справку где-то в NET, или если можеш то сбрось мне?

319
29 мая 2004 года
xelos
577 / / 27.02.2003
Цитата:
Originally posted by Andi_SPAWN

Привет! Давно я не был в NETе, задачка почти готова я тебе на днях сброшу. У меня такая проблема, мой VB6 не имеет MSDN бибилиотеки, а без справки сам знаеш не очень удобно работать. Диск с MSDN я найти не могу, может поможеш найти?
Можно ли скачать справку где-то в NET, или если можеш то сбрось мне?


http://msdn.microsoft.com/

266
31 мая 2004 года
mhaturov
901 / / 23.10.2003
Цитата:
Originally posted by Andi_SPAWN




Привет! Давно я не был в NETе, задачка почти готова я тебе на днях сброшу. У меня такая проблема, мой VB6 не имеет MSDN бибилиотеки, а без справки сам знаеш не очень удобно работать. Диск с MSDN я найти не могу, может поможеш найти?
Можно ли скачать справку где-то в NET, или если можеш то сбрось мне?


Да, целиком msdn сброить по "мылу", пожалуй, очень затруднительно. Погляди адрес, который указал уважаемый xelos - там тот же MSDN, только самый свежий, так сказать...

2.0K
06 июня 2004 года
Andi_SPAWN
69 / / 28.02.2004
Цитата:
Originally posted by mhaturov

Да, целиком msdn сброить по "мылу", пожалуй, очень затруднительно. Погляди адрес, который указал уважаемый xelos - там тот же MSDN, только самый свежий, так сказать...




Я был на том сайте, бродил там, а так толком и не понял где MSDN для VB6. Если не затруднит то можна более подробною опись где ОН!!!
Что касается програми, замену символов с помощю кодов реализовать не получается, буду делать с помощю подстановки букв!

1.9K
06 июня 2004 года
Санчез
97 / / 22.10.2003
Извиняюсь конечно(по ссылке мсдн не лазил), но я в городе купил мсдн от июля 2000г, и занимает он 4 Cd-диска :))) так что не думаю что ты сможешь скачать мсдн с интеренета(если конечно мнетне халявный :) )
266
07 июня 2004 года
mhaturov
901 / / 23.10.2003
Цитата:
Originally posted by Andi_SPAWN



Я был на том сайте, бродил там, а так толком и не понял где MSDN для VB6. Если не затруднит то можна более подробною опись где ОН!!!
Что касается програми, замену символов с помощю кодов реализовать не получается, буду делать с помощю подстановки букв!


Правку символов можно реалиовывать и при помощи подмены. Согласен. Я поэтому в условии задачи и указал, что, если не получится, делай подстановку.
А вот по поводу MSDN, так он на сайте почти такой же, как и на CD. Поэтому, думаю, тебе просто нужно с навигацией разобраться. Это тяжело объяснить - это нужно показывать... Блин, даже и не знаю. как объяснить... Вобщем, тебе нужно разобраться с навигацией. Она такая же, как в справке того же Офиса. Только из предложеных вариантов тебе нужно выбирать между C, VB и прочиим... Вобщем, показывать надо это... Попробуй ещё с ним повозиться...

2.0K
13 июня 2004 года
Andi_SPAWN
69 / / 28.02.2004
Цитата:
Originally posted by mhaturov

Правку символов можно реалиовывать и при помощи подмены. Согласен. Я поэтому в условии задачи и указал, что, если не получится, делай подстановку.
А вот по поводу MSDN, так он на сайте почти такой же, как и на CD. Поэтому, думаю, тебе просто нужно с навигацией разобраться. Это тяжело объяснить - это нужно показывать... Блин, даже и не знаю. как объяснить... Вобщем, тебе нужно разобраться с навигацией. Она такая же, как в справке того же Офиса. Только из предложеных вариантов тебе нужно выбирать между C, VB и прочиим... Вобщем, показывать надо это... Попробуй ещё с ним повозиться...




Привет! Сегодня я не с пустыми руками! Намучелся я с этой програмой, четыре раза все переделавал но в конце концов получилось. Заархивированые исходники я отсылаю в присоедененных файлах, попробуль перекомпилируй у себя! Прога работает коректно, ошибок не возникает. Думаю можно подумать о новой задачке, если есть то присылай.

2.0K
13 июня 2004 года
Andi_SPAWN
69 / / 28.02.2004
Цитата:
Originally posted by mhaturov

Правку символов можно реалиовывать и при помощи подмены. Согласен. Я поэтому в условии задачи и указал, что, если не получится, делай подстановку.
А вот по поводу MSDN, так он на сайте почти такой же, как и на CD. Поэтому, думаю, тебе просто нужно с навигацией разобраться. Это тяжело объяснить - это нужно показывать... Блин, даже и не знаю. как объяснить... Вобщем, тебе нужно разобраться с навигацией. Она такая же, как в справке того же Офиса. Только из предложеных вариантов тебе нужно выбирать между C, VB и прочиим... Вобщем, показывать надо это... Попробуй ещё с ним повозиться...



Привет! Сегодня я не с пустыми руками! Намучелся я с этой програмой, четыре раза все переделавал но в конце концов получилось. Заархивированые исходники я отсылаю в присоедененных файлах, попробуль перекомпилируй у себя! Прога работает коректно, ошибок не возникает. Думаю можно подумать о новой задачке, если есть то присылай. С MSDN попоробую разобратся. Вопрос не по теме: как на этом сайте вставить свою фотографию?

1.8K
14 июня 2004 года
Syama
97 / / 01.03.2004
Цитата:
Originally posted by Andi_SPAWN


Привет! Сегодня я не с пустыми руками! Намучелся я с этой програмой, четыре раза все переделавал но в конце концов получилось. Заархивированые исходники я отсылаю в присоедененных файлах, попробуль перекомпилируй у себя! Прога работает коректно, ошибок не возникает. Думаю можно подумать о новой задачке, если есть то присылай. С MSDN попоробую разобратся. Вопрос не по теме: как на этом сайте вставить свою фотографию?


Моледец,прога понравился,так держать!!!

2.0K
16 июня 2004 года
Andi_SPAWN
69 / / 28.02.2004
Цитата:
Originally posted by Syama

Моледец,прога понравился,так держать!!!




Привет! Если есть что-нибуть новое в смысле задача то бросай. Жду с нетерпением!

P.S. Кстати хотел тебя спросить почему ты не переходиш на VB.NET? Я от себе поставил среду - мощная махина!!! Но пока не буду профи в VB6 выше подниматся не буду.

1.8K
16 июня 2004 года
Syama
97 / / 01.03.2004
Цитата:
Originally posted by Andi_SPAWN



Привет! Если есть что-нибуть новое в смысле задача то бросай. Жду с нетерпением!

P.S. Кстати хотел тебя спросить почему ты не переходиш на VB.NET? Я от себе поставил среду - мощная махина!!! Но пока не буду профи в VB6 выше подниматся не буду.




Ты наверное спутал меня с кем то:) Я начинаюший

2.0K
17 июня 2004 года
Andi_SPAWN
69 / / 28.02.2004
Цитата:
Originally posted by mhaturov

Правку символов можно реалиовывать и при помощи подмены. Согласен. Я поэтому в условии задачи и указал, что, если не получится, делай подстановку.
А вот по поводу MSDN, так он на сайте почти такой же, как и на CD. Поэтому, думаю, тебе просто нужно с навигацией разобраться. Это тяжело объяснить - это нужно показывать... Блин, даже и не знаю. как объяснить... Вобщем, тебе нужно разобраться с навигацией. Она такая же, как в справке того же Офиса. Только из предложеных вариантов тебе нужно выбирать между C, VB и прочиим... Вобщем, показывать надо это... Попробуй ещё с ним повозиться...



Привет! Ти куда пропал? У тебя со временем напряги? Если так то я понимаю, у меня это в порядке вещей, я там сбросил заархивированые исходники чуть раньше по последней здачке, если сможеш то посмотри, ну а я бы хотел двигатся дальше, если есть новые задания пиши! Жду ответа!!!

2.0K
17 июня 2004 года
Andi_SPAWN
69 / / 28.02.2004
Цитата:
Originally posted by Syama

Моледец,прога понравился,так держать!!!




Я тебя действительно спутал, но ничего страшного, будем знакомы! Ты давно пишеш на VB6?
Если будут койкакие вопросы обращайся, чем смогу тем помогу, я и сам относительно новичок, но опыт написания приложений уже есть.

1.8K
17 июня 2004 года
Syama
97 / / 01.03.2004
Цитата:
Originally posted by Andi_SPAWN



Я тебя действительно спутал, но ничего страшного, будем знакомы! Ты давно пишеш на VB6?
Если будут койкакие вопросы обращайся, чем смогу тем помогу, я и сам относительно новичок, но опыт написания приложений уже есть.



Спасибо за предложение,Я обезательно им воспользуюсь.:}

6.7K
23 июня 2004 года
Brook
16 / / 30.05.2004
Народ! Всех приветствую.

Почитал тут про вашу задачку на счет ресайза и вот что могу предложить попробовать еще (если это было сделано - извиняюсь, коды не смотрел). Так вот, в ВБ, в отличии по от, например, продуктов Borland, нельзя выставить минимальные размеры формы явно. При этом, если делать элементы, которые уменьшаются при уменьшении формы, то в определенный момент, когда размер элемента становится 0 или меньше выпадает ошибка. Так вот могу предложить подумать, как это можно обойти. Вариант, когда размеры элементов расчитываются исходя из коэффициентов не очень пойдет.

Смысл сводится к тому, чтобы ограничить минимальный размер формы. Тут вообще возможно несколько вариантов. Сразу оговорюсь, что если обрабатывать onResize и в нем выставлять мин. значение - получается полная ерунда. Можно это сделать по другому...

Задачка, на мой взгляд, действительно интересная.
2.0K
24 июня 2004 года
Andi_SPAWN
69 / / 28.02.2004
Цитата:
Originally posted by Brook
Народ! Всех приветствую.

Почитал тут про вашу задачку на счет ресайза и вот что могу предложить попробовать еще (если это было сделано - извиняюсь, коды не смотрел). Так вот, в ВБ, в отличии по от, например, продуктов Borland, нельзя выставить минимальные размеры формы явно. При этом, если делать элементы, которые уменьшаются при уменьшении формы, то в определенный момент, когда размер элемента становится 0 или меньше выпадает ошибка. Так вот могу предложить подумать, как это можно обойти. Вариант, когда размеры элементов расчитываются исходя из коэффициентов не очень пойдет.

Смысл сводится к тому, чтобы ограничить минимальный размер формы. Тут вообще возможно несколько вариантов. Сразу оговорюсь, что если обрабатывать onResize и в нем выставлять мин. значение - получается полная ерунда. Можно это сделать по другому...

Задачка, на мой взгляд, действительно интересная.





Привет! Я автор єтой проги, раньше мною была написана процедура по ресайзу формы, и я поступил так как ты советуеш не поступать тоесть определил минимальные значения елементов и растояний между ними. В момент выполнения соби=ытия Resize происходило вычисление размеров елементов и растояний и сравнение с минимально-допустимыми значениями, при этом стояло условие, если меньше минимального то присвоить минимальное значение. Другими словами я это реализовал так и у меня все получилось, почему ты говориш что это полная ерунда?

2.0K
24 июня 2004 года
Andi_SPAWN
69 / / 28.02.2004
Цитата:
Originally posted by mhaturov

Правку символов можно реалиовывать и при помощи подмены. Согласен. Я поэтому в условии задачи и указал, что, если не получится, делай подстановку.
А вот по поводу MSDN, так он на сайте почти такой же, как и на CD. Поэтому, думаю, тебе просто нужно с навигацией разобраться. Это тяжело объяснить - это нужно показывать... Блин, даже и не знаю. как объяснить... Вобщем, тебе нужно разобраться с навигацией. Она такая же, как в справке того же Офиса. Только из предложеных вариантов тебе нужно выбирать между C, VB и прочиим... Вобщем, показывать надо это... Попробуй ещё с ним повозиться...



Привет, ты куда пропал? Если у тебя со временем трудно то напиши! А то я начинаю думать что меня игнорируеш.

6.7K
24 июня 2004 года
Brook
16 / / 30.05.2004
Основная причина - короче говоря, если вот так вот программно "возвращать" размеры формы к какому - то значению, то все конечно работает, только наблюдается один глюк, если кнопку мыши не отпускать. Конечно можно и на эжто наплевать, но реально - даже в таком случае можно получить ту самую ошибку, если очень постараться, да и выглядит не очень хорошо все это...
266
24 июня 2004 года
mhaturov
901 / / 23.10.2003
Цитата:
Originally posted by Brook
Основная причина - короче говоря, если вот так вот программно "возвращать" размеры формы к какому - то значению, то все конечно работает, только наблюдается один глюк, если кнопку мыши не отпускать. Конечно можно и на эжто наплевать, но реально - даже в таком случае можно получить ту самую ошибку, если очень постараться, да и выглядит не очень хорошо все это...


Прошу прощенья, что долго не отвечал. У меня сейчас завал дел, а со 2 числа я в отпуске. Давайте поэтому остальные уроки перенесём на вторую половину июля. ОК?

2.0K
29 июня 2004 года
Andi_SPAWN
69 / / 28.02.2004
Цитата:
Originally posted by mhaturov

Прошу прощенья, что долго не отвечал. У меня сейчас завал дел, а со 2 числа я в отпуске. Давайте поэтому остальные уроки перенесём на вторую половину июля. ОК?




ОК! Я там несколько раньше сбросил решение последей задачки поэтому если будет время посмотри (она во вложеных файлах). Желаю хорошо отдохнуть, до встречи!!!

258
29 июня 2004 года
SergeySV
1.5K / / 19.03.2003
Позвольте я тоже выскажу свое мнение по поводу представленного кода, а именно рац. предложения.

В приведенном коде есть один очень мешающий недостаток:
1. В функциях Resize_frmTransliterate (и др.) стоят явные ссылки на контролы формы. Т.о. теряется универсальность кода и мы уже можем использовать эту функцию для других форм без переделки самого кода, а как бы хотелось, раз написав функцию по resize'у и положив ее в модуль потом спокойно использовать этот модуль во всех своих проектах долгие, долгие годы :)
Тем более что все это возможно сделать немного модернизировав сам алгорим функций.

Не знаю, заинтересует ли тебя эта задачка и нужна ли тебе подсказка, мое дело как говорится, предложить ;)
266
29 июня 2004 года
mhaturov
901 / / 23.10.2003
Цитата:
Originally posted by SergeySV
Позвольте я тоже выскажу свое мнение по поводу представленного кода, а именно рац. предложения.

В приведенном коде есть один очень мешающий недостаток:
1. В функциях Resize_frmTransliterate (и др.) стоят явные ссылки на контролы формы. Т.о. теряется универсальность кода и мы уже можем использовать эту функцию для других форм без переделки самого кода, а как бы хотелось, раз написав функцию по resize'у и положив ее в модуль потом спокойно использовать этот модуль во всех своих проектах долгие, долгие годы :)
Тем более что все это возможно сделать немного модернизировав сам алгорим функций.

Не знаю, заинтересует ли тебя эта задачка и нужна ли тебе подсказка, мое дело как говорится, предложить ;)


ОК, Сергей, перехвати, пожалуста, у меня хотя бы на время эту тему. А то сейчас я защищался, тут ещё отпуск близится и надо все проекты передавать перед отпуском, а со 2 числа меня вообще не будет, а так не хочется делать долгий перерыв в задачках! Перехвати тему, если не трудно! ОК?
Теперь, к чему я веду.
На задачках, которые реально пригодятся как "просто для себя", так и в плане использования в проектах в будущем, я пытаюсь показать разные интересные приёмы программирования так, чтобы уважаемый Andi_SPAWN сам их решал - так лучше всего, на мой взгляд, запоминается,и привести это всё к написанию универсального калькулятора, который будет считать гору всякой всячины. Это как бы конец первого этапа.
Потом вторым этапом хочу начать разбор работы с БД... Это очень пригодится ещё... Но, в принципе, 2 этап будет ещё не скоро, я успею вернуться...
Подхватишь на 3-4 недельки тему, ок?

258
29 июня 2004 года
SergeySV
1.5K / / 19.03.2003
Моя позиция попроще: стараться чтобы код красивым и функциональным был, ну и главное конечно - универсальным.

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

Что касается конкретно данного примера, то эталоном конечно может служить разработка .... Гетца, но она хоть и достаточно универсальна, все таки привязана к Access, а вот реализовать эту идею под VB пока вроде никто не сделал, а было бы всем счастье... так что я преследую еще и корыстные цели, с другой стороны я думаю Andi_SPAWN было бы приятно решить эту задачку самостоятельно (я то уже видел эталон и мне остается только техн. все перелапатить, без всякого творческого порыва :( ) и достичь заветного идела собственными силами.
2.0K
30 июня 2004 года
Andi_SPAWN
69 / / 28.02.2004
Цитата:
Originally posted by SergeySV
Моя позиция попроще: стараться чтобы код красивым и функциональным был, ну и главное конечно - универсальным.

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

Что касается конкретно данного примера, то эталоном конечно может служить разработка .... Гетца, но она хоть и достаточно универсальна, все таки привязана к Access, а вот реализовать эту идею под VB пока вроде никто не сделал, а было бы всем счастье... так что я преследую еще и корыстные цели, с другой стороны я думаю Andi_SPAWN было бы приятно решить эту задачку самостоятельно (я то уже видел эталон и мне остается только техн. все перелапатить, без всякого творческого порыва :( ) и достичь заветного идела собственными силами.





Привет! Я так понимаю что задачка состоит в том чтобы сделать функцию ресайза унпверсальной?

258
30 июня 2004 года
SergeySV
1.5K / / 19.03.2003
Цитата:
Originally posted by Andi_SPAWN

Привет! Я так понимаю что задачка состоит в том чтобы сделать функцию ресайза унпверсальной?



Да, чтобы можно было функции указывать любую форму, т.е. достаточно было передать ссылку на форму.

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог