Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: помогите ускорить код Добавлено: 23.02.07 19:40  

Автор вопроса:  D o c a l  | Web-сайт: www.doc-source.pp.net.ua/ | ICQ: 408802757 
Здесь код моей програми


Private Sub Command3_Click()

Form_Load
Pb1.Max = Form1.Picture1.ScaleHeight * Form1.Picture1.ScaleWidth / 25
For i = 0 To Form1.Picture1.ScaleHeight * Form1.Picture1.ScaleWidth
hiio = Form1.Picture1.Point(a, b)
van = van + 1
If a < Form1.Picture1.ScaleWidth And b < Form1.Picture1.ScaleHeight Then
Text1.Text = hiio





Command1_Click
a = a + 1
If a < x1 + 1 And b < y1 + 1 Then
Else
a = (x1 - 5) + 1
b = b + 1
End If
If a = x1 And b = y1 Then
hiio = Form1.Picture1.Point(a, b)
van = van + 1
Command1_Click
Command4_Click

c = c + 1
a = (c * 5) - 5 + 1
b = y1 + 1 - 5
x1 = x1 + 5
y1 = y1
End If
Else
x1 = 5
c = 1
c2 = c2 + 1
a = x1 + 1 - 5
b = (c2 * 5) - 5 + 1
x1 = x1
y1 = y1 + 5

End If
Next i

End Sub
Private Sub Command4_Click()

Pb1.Value = Pb1.Value + 1
Text12.Text = Text12.Text / van
Text13.Text = Text13.Text / van
Text14.Text = Text14.Text / van
Text2.Text = Text12.Text
Text3.Text = Text13.Text
Text4.Text = Text14.Text
Command10_Click
DoEvents
fasx = x1 - 4 '&#225;&#238; &#228;&#224;&#235;&#252;&#248;&#229; +1
fasy = y1 - 5
For i = 0 To 25
fasx = fasx + 1
Form1.Picture1.PSet (fasx, fasy), Text5.Text
If fasx < x1 + 1 And fasy < y1 + 1 Then
Else
fasx = (x1 - 5) + 1
fasy = fasy + 1
End If
Next i
van = 0
Text12.Text = 0
Text13.Text = 0
Text14.Text = 0
End Sub
Pb1.Value = 0
rst = 1
a = 0
b = 0
x1 = 5
y1 = 5
c2 = 1
c = 1
van = 0

Text10.Text = Form1.Picture1.ScaleHeight
Text11.Text = Form1.Picture1.ScaleWidth

Ответить

  Ответы Всего ответов: 6  

Номер ответа: 1
Автор ответа:
 D o c a l



ICQ: 408802757 

Вопросов: 76
Ответов: 985
 Web-сайт: www.doc-source.pp.net.ua/
 Профиль | | #1
Добавлено: 23.02.07 19:41
Там где end sub-останий там начинактса form_load

Ответить

Номер ответа: 2
Автор ответа:
 D o c a l



ICQ: 408802757 

Вопросов: 76
Ответов: 985
 Web-сайт: www.doc-source.pp.net.ua/
 Профиль | | #2
Добавлено: 23.02.07 19:42
Помогите ето ускорить плз.

Ответить

Номер ответа: 3
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #3 Добавлено: 23.02.07 23:42
1) Обращение к свойствам объектов гораздо медленее обращения к переменным, а у тебя оно в цикле... значит обращения к свойству объекта можно вынести за цикл, тем самым его ускорив...

Dim SH as long: SH = Form1.Picture1.ScaleHeight

for...
 'Вычисления в которых участвует тепепь SH, а не Form1.Picture1.ScaleHeight...
next


2)
For i = 0 To Form1.Picture1.ScaleHeight * Form1.Picture1.ScaleWidth
...

Почти пункт 1, зачем выполнять одно и тоже умножение в цикле, когда можно вынести умножение за цикл, чтобы оно выполнялось 1 раз, перед циклом...
Dim Proizvedenie as Long: Proizvedenie = Form1.Picture1.ScaleHeight * Form1.Picture1.ScaleWidth

For i = 0 To Proizvedenie
...


3) Не все переменные у тебя объявлены, напиши перед всем своим кодом "Option Explicit". Все переменные которые ты используешь ДОЛЖНЫ быть объявлены, при использовании "Option Explicit" компилятор запретит использовать необъявленные переменные, которые когда они не объявленные являются типом Variant.

4) Перемнные типа Long быстрее всех остальных, кроме Bool конечно :)

Ответить

Номер ответа: 4
Автор ответа:
 D o c a l



ICQ: 408802757 

Вопросов: 76
Ответов: 985
 Web-сайт: www.doc-source.pp.net.ua/
 Профиль | | #4
Добавлено: 24.02.07 11:04
Спасба Hacker

Ответить

Номер ответа: 5
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #5 Добавлено: 25.02.07 03:24
Project >> Project Properties >> Compile >> Advanced Optimizations

поставить все глалки которые начинаются с "Remove"

Ответить

Номер ответа: 6
Автор ответа:
 Fever



Вопросов: 60
Ответов: 808
 Профиль | | #6 Добавлено: 27.02.07 20:56
Перемнные типа Long быстрее всех остальных, кроме Bool конечно :)

И буля тоже.
Project >> Project Properties >> Compile >> Advanced Optimizations

Токо осторожно, а то если в проекте останутся ошибки, прога будет вылетать с окошком ПРОГРАММА ВЫПОЛНИЛА... вместо тихого вбшного мсгбокса

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам