Visual Basic, .NET, ASP, VBScript
 

   
   
     

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

Страница: 1 |

 

  Вопрос: Прорисовка формы Добавлено: 21.06.05 17:04  

Автор вопроса:  BeTe
Есть проблема. Беру форму, делаю ее маленьких размеров и пишу в нее код на апи для того чтоб была поверх всех форм. Добавляю таймер с интервалом в 10 мс и говорю ему ставить форму поверх других. Работает на ура. Но вот проблема - запускаю какую-нить игрушку и моя форма не видна... Как можно сделать так чтою форма была поверх других форм при любом раскладе, будь то игрушка или не игрушка? Или чтоб хотябы можно было пару точек нарисовать на экране, чтоб они были поверх вселенной всей? Как это сделать?

Ответить

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

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


 

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

Вопросов: 236
Ответов: 8362
 Профиль | | #1 Добавлено: 21.06.05 21:22
1) Это не формой делается...
2) Игруху будет очень тормозить
3) См этот код:

Private Declare Function SetPixel Lib "gdi32" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal crColor As Long) As Long
Private Declare Function GetWindowDC Lib "user32" (ByVal hwnd As Long) As Long
Private Declare Function GetDesktopWindow Lib "user32" () As Long
Private Declare Function SetTextColor Lib "gdi32" (ByVal hdc As Long, ByVal crColor As Long) As Long
Sub CP(hdc As Long, X1 As Integer, X2 As Integer, Y1 As Integer, Y2 As Integer, COLOR As Long)
Dim x As Integer
Dim y As Integer
For x = X1 To X2
For y = Y1 To Y2
SetPixel hdc, x, y, COLOR
Next y
Next x
End Sub

Private Sub Command1_Click()
Timer1.Enabled = True
End Sub

Private Sub HScroll1_Change()
Label2 = HScroll1.Value + 1
End Sub

Private Sub Timer1_Timer()
x3 = 512
y3 = 384
s = HScroll1.Value
CP GetWindowDC(GetDesktopWindow), x3 - s, x3 + s, y3 - s, y3 + s, RGB(255, 255, 255)
End Sub


HScroll1 от 1 до 4 вроде, короче определяет размер точки

Ответить

Номер ответа: 2
Автор ответа:
 BeTe



Вопросов: 6
Ответов: 30
 Профиль | | #2 Добавлено: 22.06.05 11:07
Спасиба большое. Притормаживает это точно... Только вот все равно запускаю игруху и точка видна на мгновение, и потом появляется очень редко и снова на мгновение. Может это потому что экран в игрушке обновляется чаще чем таймер срабатывает на форме? я уже пробовал минимальное значение в интервале, результат тот же. Можно эту проблему как то решить или это глухой угол?

Ответить

Страница: 1 |

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



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