vb中如何保存桌面图标的位置
展开全部
不知道你是修改的是系统的还是程序的?
如果是程序的那就如上位所说
若想让关闭程序后鼠标仍改变那就参考下面
declare
function
loadcursorfromfile
lib
"user32"
alias
"loadcursorfromfilea"
(byval
lpfilename
as
string)
as
long
declare
function
setsystemcursor
lib
"user32"
alias
"setsystemcursor"
(byval
hcur
as
long,
byval
id
as
long)
as
long
'关于
setsystemcursor
hcur:光标的句柄,该函数hcur标识的光标的内容代替id定义的系统光标内容。系统通过调用destroycursor函数销毁hcur。因此hcur不能是由loadcursor函数载入的光标。要指定一个从资源载入的光标,先用copycursor函数复制该光标,然后把该副本传送给setsystemcursor函数。
id:指定由hour的内容替换系统光标。
下面是一系列的系统光标标识符:
ocr_appstarting:标准箭头和小的沙漏
ocr_normal:标准箭头
ocr_cross:交叉十字线光标
ocr_hand:手的形状(windows
nt
5.0
和以后版本)
ocr_help:箭头和向东标记
ocr_ibeam:i形梁
ocr_no:斜的圆
ocr_sizeall:四个方位的箭头分别指向北、南、东、西
ocr_sizenesew:双箭头分别指向东北和西南
ocr_sizens:双箭头,分别指向北和南
ocr_sizenwse:双箭头分别指向西北和东南
ocr_sizewe:双箭头分别指向西和东
ocr_up:垂直箭头
ocr_wait:沙漏
然后
setsystemcursor
loadcursorfromfile("d:\1.ani"),ocr_normal
即可。
系统会自动调用
destroycursor
来销毁。
option
explicit
private
declare
function
loadcursorfromfile
lib
"user32"
alias
"loadcursorfromfilea"
(byval
lpfilename
as
string)
as
long
private
declare
function
setsystemcursor
lib
"user32"
(byval
hcur
as
long,
byval
id
as
long)
as
long
private
declare
function
destroycursor
lib
"user32"
(byval
hcur
as
long)
as
long
private
const
ocr_normal
=
32512
dim
lret
as
long
private
sub
form_load()
lret
=
loadcursorfromfile("d:\icons\standard
hand.cur")'我的图标路径
setsystemcursor
lret,
ocr_normal
end
sub
private
sub
command1_click()
destroycursor(lret)
end
sub
惨了……变不回去……必须要重设光标了。
但你可以设置单击“取消”后把鼠标换成系统鼠标图案,前提是你要有系统的鼠标文件
如果是程序的那就如上位所说
若想让关闭程序后鼠标仍改变那就参考下面
declare
function
loadcursorfromfile
lib
"user32"
alias
"loadcursorfromfilea"
(byval
lpfilename
as
string)
as
long
declare
function
setsystemcursor
lib
"user32"
alias
"setsystemcursor"
(byval
hcur
as
long,
byval
id
as
long)
as
long
'关于
setsystemcursor
hcur:光标的句柄,该函数hcur标识的光标的内容代替id定义的系统光标内容。系统通过调用destroycursor函数销毁hcur。因此hcur不能是由loadcursor函数载入的光标。要指定一个从资源载入的光标,先用copycursor函数复制该光标,然后把该副本传送给setsystemcursor函数。
id:指定由hour的内容替换系统光标。
下面是一系列的系统光标标识符:
ocr_appstarting:标准箭头和小的沙漏
ocr_normal:标准箭头
ocr_cross:交叉十字线光标
ocr_hand:手的形状(windows
nt
5.0
和以后版本)
ocr_help:箭头和向东标记
ocr_ibeam:i形梁
ocr_no:斜的圆
ocr_sizeall:四个方位的箭头分别指向北、南、东、西
ocr_sizenesew:双箭头分别指向东北和西南
ocr_sizens:双箭头,分别指向北和南
ocr_sizenwse:双箭头分别指向西北和东南
ocr_sizewe:双箭头分别指向西和东
ocr_up:垂直箭头
ocr_wait:沙漏
然后
setsystemcursor
loadcursorfromfile("d:\1.ani"),ocr_normal
即可。
系统会自动调用
destroycursor
来销毁。
option
explicit
private
declare
function
loadcursorfromfile
lib
"user32"
alias
"loadcursorfromfilea"
(byval
lpfilename
as
string)
as
long
private
declare
function
setsystemcursor
lib
"user32"
(byval
hcur
as
long,
byval
id
as
long)
as
long
private
declare
function
destroycursor
lib
"user32"
(byval
hcur
as
long)
as
long
private
const
ocr_normal
=
32512
dim
lret
as
long
private
sub
form_load()
lret
=
loadcursorfromfile("d:\icons\standard
hand.cur")'我的图标路径
setsystemcursor
lret,
ocr_normal
end
sub
private
sub
command1_click()
destroycursor(lret)
end
sub
惨了……变不回去……必须要重设光标了。
但你可以设置单击“取消”后把鼠标换成系统鼠标图案,前提是你要有系统的鼠标文件
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询