Подобие SetClassLong для одного окна

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Arcady_XQST
Обычный пользователь
Обычный пользователь
 
Сообщения: 85
Зарегистрирован: 17.09.2007 (Пн) 1:27
Откуда: Russia, Bryansk

Подобие SetClassLong для одного окна

Сообщение Arcady_XQST » 24.12.2007 (Пн) 17:31

Приветствую! Хотелось бы узнать, можно-ли применить SetClassLong My.hwnd, GCL_HCURSOR, hCursor к одному окну а не ко всем окнам такого класса? А то ведь все контролы с классом типа My (^_^) приобретают новый курсор. Нужно только к определенному окну. Кто-нибудь сталкивался с подобным? Помогите плиз.
// тили-тили, трали-вали
if (jsLoaded) {
// это дело мне по силе, откажусь теперь едва ли
} else {
// это мы не проходили, это нам не задавали
}

Lumen
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 841
Зарегистрирован: 03.12.2005 (Сб) 16:09
Откуда: Брянск

Сообщение Lumen » 25.12.2007 (Вт) 5:47

А к чему именно надо применить?

Arcady_XQST
Обычный пользователь
Обычный пользователь
 
Сообщения: 85
Зарегистрирован: 17.09.2007 (Пн) 1:27
Откуда: Russia, Bryansk

Сообщение Arcady_XQST » 26.12.2007 (Ср) 18:49

А что это меняет? :) К UserControl'у, только не ко всем, разумеется.
// тили-тили, трали-вали
if (jsLoaded) {
// это дело мне по силе, откажусь теперь едва ли
} else {
// это мы не проходили, это нам не задавали
}

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 26.12.2007 (Ср) 20:32

А почему бы просто не поменять курсор конкретного UC?
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Arcady_XQST
Обычный пользователь
Обычный пользователь
 
Сообщения: 85
Зарегистрирован: 17.09.2007 (Пн) 1:27
Откуда: Russia, Bryansk

Сообщение Arcady_XQST » 26.12.2007 (Ср) 21:56

Т.к. курсором является т.н. "рука", и ее нету в списке MousePointer, то я не знаю как иначе присвоить объекту полноценный (с тенью) оригинальный курсор "руки".
// тили-тили, трали-вали
if (jsLoaded) {
// это дело мне по силе, откажусь теперь едва ли
} else {
// это мы не проходили, это нам не задавали
}

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 26.12.2007 (Ср) 21:59

Курсор "рука" не является стандартным, поэтому его нет в этом списке. Но раз он не стандартный, значит загружаешь ты его вероятно из файла. Ставь тогда в MouseIcon это изображение.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Lumen
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 841
Зарегистрирован: 03.12.2005 (Сб) 16:09
Откуда: Брянск

Сообщение Lumen » 26.12.2007 (Ср) 23:14

Я имел в виду где?. В твоем юзерконтроле (у твоего приложения) можно поступить как посоветовал Хакер. И незачем извращаться с апи.

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 27.12.2007 (Чт) 8:59

Хакер писал(а):Курсор "рука" не является стандартным, поэтому его нет в этом списке.

Вообще-то является. Просто он не предусмотрен в VB.
Lasciate ogni speranza, voi ch'entrate.

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 27.12.2007 (Чт) 9:01

Arcady_XQST писал(а):Т.к. курсором является т.н. "рука", и ее нету в списке MousePointer, то я не знаю как иначе присвоить объекту полноценный (с тенью) оригинальный курсор "руки".

Просто присваивай, только загружай его из ресурсов, а не присваивай в design-time. В скомпилированном exe все будет нормально.
Lasciate ogni speranza, voi ch'entrate.

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 27.12.2007 (Чт) 12:37

alibek
Он не предусмотрен, потому что он не полноценно стандартный. Например, его нет в Win9x.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 27.12.2007 (Чт) 12:59

Например, он есть в W2k.
Что значит "полноценно стандартный"? W-функции WinAPI ты тоже считаешь нестандартные, потому что их нет в Win9x?
Lasciate ogni speranza, voi ch'entrate.

Хакер
Телепат
Телепат
Аватара пользователя
 
Сообщения: 16478
Зарегистрирован: 13.11.2005 (Вс) 2:43
Откуда: Казахстан, Петропавловск

Сообщение Хакер » 27.12.2007 (Чт) 12:59

Началось.
—We separate their smiling faces from the rest of their body, Captain.
—That's right! We decapitate them.

Arcady_XQST
Обычный пользователь
Обычный пользователь
 
Сообщения: 85
Зарегистрирован: 17.09.2007 (Пн) 1:27
Откуда: Russia, Bryansk

Сообщение Arcady_XQST » 11.01.2008 (Пт) 18:52

Хакер писал(а):Но раз он не стандартный, значит загружаешь ты его вероятно из файла.
hCursor = LoadCursor(ByVal 0&, IDC_LINK)
SetClassLong UserControl.hwnd, GCL_HCURSOR, hCursor

alibek писал(а):Просто присваивай, только загружай его из ресурсов, а не присваивай в design-time. В скомпилированном exe все будет нормально.
Интерестно, кто будет заниматься тенью? Курсор ее не приобретает... Да и я хочу не свой курсор, а выбраный в Указателях... Вообщем, все как положено :)
// тили-тили, трали-вали
if (jsLoaded) {
// это дело мне по силе, откажусь теперь едва ли
} else {
// это мы не проходили, это нам не задавали
}


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Google-бот и гости: 62

    TopList