Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Power Basic

Страница: 1 | 2 | 3 |

 

  Вопрос: Помогите с API в VB2005 Express или где скач VB 6 Добавлено: 02.10.06 19:46  

Автор вопроса:  dimon
Нужна программка, которая:
1 берет с экрана кусок изображения 20*20 пикс.(на всем экране)

2 сравнивает его с эталонным изобр. (~70 эталонов; 1но мерный массив)
3 по результату присваивает определенное значение переменной (7 шт)
4 логическая часть На выходе одна переменная Х
5 в зависимости от значения Х, перемещает курсор мыши в определенную точку и делает левый клик.
6 подпрограммка : хватает мышью окно, перетаскивает в другое место и отпускает



Для началного ввода эталонов нужна 2 программки:

8 по шелчку мыши берет с экрана кусок изображения 20*20 пикс. и заносит его в массив

9 выводит в Текстбоксы положение курсора мыши и цвет пикселя в этой точке(на всем экране)

Вроде простые программки, но я как начал с 9й неделю назад, так и не сдвинулся с места.
В VB2005 Express никак не пойму как использовать API-функции. Всю МСДН перерыл- ни конкретного описания API-функций, ни способа их применения. В сети тоже мало инфы по VB2005 Express.

В VB 6 я не работал, но как я понял, было бы проще, но не могу его найти. На сайте микрософта нету, а так, по сети одни битые ссылки.


В общем помогите кто чем может.

Могу даже поделится энным кол-вом WMZ(небольшим),
если ктото напишет работоспособный каркас этих программ на VB2005 Express.

Спасибо.
dvdv72@mail.ru

Ответить

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

Номер ответа: 1
Автор ответа:
 -АлександР-



Вопросов: 55
Ответов: 1008
 Web-сайт: sham.clan.su
 Профиль | | #1
Добавлено: 02.10.06 20:59
Хм, странно... Я думал, что АПИ в VB2005 определяются также, как и в VB6, за исключением нескольких тонкостоей, вроде такого, что не поддерживается As Any и др. мелочей В остальном они одинаковы

Ответить

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



Вопросов: 6
Ответов: 23
 Профиль | | #2 Добавлено: 02.10.06 23:03
Но обьявляются они по разному.
во всяком случае я перепробовал кучу советов, примеров кода и- НИЧЕГО. (координаты отображаются, а цвет никак)
Но если Вы знаете как, пожалуйста, подскажите
процедуру получения цвета пикселя в координате х,у.
Или полностью прогр. №9
Спасибо

Ответить

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



Вопросов: 6
Ответов: 23
 Профиль | | #3 Добавлено: 02.10.06 23:04
Но обьявляются они по разному.

во всяком случае я перепробовал кучу советов, примеров кода и- НИЧЕГО. (координаты отображаются, а цвет никак)


Но если Вы знаете как, пожалуйста, подскажите
процедуру получения цвета пикселя в координате х,у.
Или полностью прогр. №9

Спасибо

Ответить

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


 

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

Вопросов: 236
Ответов: 8362
 Профиль | | #4 Добавлено: 02.10.06 23:13
VB6
20 WMZ
2-4 дня

p.s. нужное полное т/з

Ответить

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



Вопросов: 6
Ответов: 23
 Профиль | | #5 Добавлено: 02.10.06 23:59


Может проще Вам вставить функцию получения цвета пикселя в мою программку?

форма с 2мя текстбоксами, и кнопкой exit

Public Class Form1
  
    ;Dim returnValue As String

    ;Dim x As Integer
    ;Dim y As Integer
    ;Dim returnVal As Color



    Public Function GetPixel( _
    ByVal x As Integer, _
    ByVal y As Integer _
    ;) As Color 'функция объявлена, но не работает



    End Function


    Public Overloads ReadOnly Property MousePosition() As Point 'эту функцию хотелось-бы заменить на API

        Get


        End Get



    End Property


    Private Sub Form1_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Me.MouseMove

        x = Control.MousePosition.X
        y = Control.MousePosition.Y
        returnValue = Control.MousePosition.ToString 'эту функцию хотелось-бы заменить на API
        TextBox1.Text = returnValue 'здесь все нормально отображается

        returnVal = GetPixel(x, y)

        TextBox2.Text = returnVal.ToString ' в TextBoxе отображает "Color [Empty]"
       
    End Sub




    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        End
    End Sub
End Class



Спасибо.

 HACKER, ответил на мыло.

Ответить

Номер ответа: 6
Автор ответа:
 -АлександР-



Вопросов: 55
Ответов: 1008
 Web-сайт: sham.clan.su
 Профиль | | #6
Добавлено: 03.10.06 01:49
    Public Function GetPixel( _
    ByVal x As Integer, _
    ByVal y As Integer _
    ;) As Color 'функция объявлена, но не работает



    End Function
Ты думаешь АПИ-функцию объявил?

Ответить

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


 

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

Вопросов: 236
Ответов: 8362
 Профиль | | #7 Добавлено: 03.10.06 03:17
2 dimon
Прости не пришло, у меня везду грубый фильтр спама стоит, мож он тебя за спамера посчитал :) Продублируй плз на другое мыло и/или измени заголовок темы. А ещё лучше в асю...

rusya[sabaka]mail.ru

Ответить

Номер ответа: 8
Автор ответа:
 dimon



Вопросов: 6
Ответов: 23
 Профиль | | #8 Добавлено: 03.10.06 09:59
 -АлександР-
Так я и прошу помочь объявить и использовать АПИ-функцию

 HACKER
продублировал, асю пока не завел.

Ответить

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


 

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

Вопросов: 236
Ответов: 8362
 Профиль | | #9 Добавлено: 03.10.06 13:08
Private Declare Function GetPixel Lib "gdi32" Alias "GetPixel" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long) As Long

Ответить

Номер ответа: 10
Автор ответа:
 vito



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

Вопросов: 23
Ответов: 879
 Web-сайт: softvito.narod2.ru
 Профиль | | #10
Добавлено: 03.10.06 13:28
В .NET есть аналогичеая функция.
GetPixel
Из пространства имен System.Drawing
Для решения твоей задачи можно обойтись и без API.

Ответить

Номер ответа: 11
Автор ответа:
 dimon



Вопросов: 6
Ответов: 23
 Профиль | | #11 Добавлено: 03.10.06 14:07
 HACKER
А что такое hdc?
Вставил в код- на строке returnVal = GetPixel(x, y) -пишет ошибку- Argument not specified for parameter 'y' of 'Declare Ansi Function GetPixel Lib "gdi32" Alias "GetPixel" (hdc As Long, x As Long, y As Long) As Long'.


 vito
Так я использую GetPixel
посмотри код. - не возвращает цвет- empti -пишет

Ответить

Номер ответа: 12
Автор ответа:
 vito



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

Вопросов: 23
Ответов: 879
 Web-сайт: softvito.narod2.ru
 Профиль | | #12
Добавлено: 03.10.06 14:51
dimon
Ты ее вообще не так используешь.
1. Нужно создать объект Bitmap.
2. В MSDN примеры использования.

Ответить

Номер ответа: 13
Автор ответа:
 dimon



Вопросов: 6
Ответов: 23
 Профиль | | #13 Добавлено: 03.10.06 16:00
Мне нужен цвет пикселя в ЛЮБОЙ точке экрана, в том числе и на окнах других приложений, а не в Bitmap'e

"Всю МСДН перерыл- ни конкретного описания API-функций, ни способа их обьявления/применения"

Ответить

Номер ответа: 14
Автор ответа:
 vito



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

Вопросов: 23
Ответов: 879
 Web-сайт: softvito.narod2.ru
 Профиль | | #14
Добавлено: 03.10.06 16:58
Мне нужен цвет пикселя в ЛЮБОЙ точке экрана, в том числе и на окнах других приложений, а не в Bitmap'e


А ты как хочешь?
Навел курсор, передал координаты и GetPixel.:)

Еще раз повторю GetPixel API и .NET практически идентичны. И по функционалу и по способу работы с ними.

"Всю МСДН перерыл- ни конкретного описания API-функций, ни способа их обьявления/применения"


Какую?

Ответить

Номер ответа: 15
Автор ответа:
 dimon



Вопросов: 6
Ответов: 23
 Профиль | | #15 Добавлено: 03.10.06 17:39
Уважаемые господа, я ЧАЙНИК на данный момент.
в начале 90х я много программировал на том бейсике, который был тогда (ПК Львив, Агат),
и неплохо его знал. Но он был прост как лопата, а этот ВБ....
Поэтому я и прошу помочь, если кто может.


"Всю МСДН перерыл- ни конкретного описания API-функций, ни способа их обьявления/применения"
Какую?

GetPixel API (или не АПИ, но чтобы отображался цвет пикселя в ЛЮБОЙ точке экрана), чтобы она работала в моем коде.

Если знаете как это сделать, вставьте в код нужные строки, пожалуйста.

А тыкать чайника носом в это самое- бесполезно, это не поможет ни мне, ни Вам.

Ответить

Страница: 1 | 2 | 3 |

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



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