关于vb6升级到vb.net的几个问题?系列之二

weity 2002-10-02 05:04:54
很简单的,
1.鼠标状态的切换??
例如:执行一个长时间的过程,需要将鼠标变成沙漏,执行完毕在变成正常状态。

2.关于Line这个Object该如何转换?
现在我升级的程序是:Line 变成了Label,还有Shape也变成了Label.
我该如何处理???

3.关于如何读取XML各式的配置文件?
是不是和以前读取*.ini文件雷同呢?
但是,XML的格式特殊,我查到一个XmlTextReader Class,但是不知道如何具体使用。


各位高手,有例子代码的话,请给我邮递一份,在此谢了。

...全文
49 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
sumtec 2002-10-03
  • 打赏
  • 举报
回复
嗬嗬,楼上的是翻译哦!

大概就是说序列化的东西。其实很简单的。

首先在工程里面添加一个新的“类库”Class1.vb
然后在这个工程里面添加引用“System.XML.dll”
接着如此输入:

'Class1.vb
Imports System.IO, System.XML.Serialization
<Serializable> _
Class MyRecords
Public Record1 As Integer
...

Public Sub Serialize(ByVal filename As String)
Dim f As New FileStream(filename, FileMode.Create, FileAccess.ReadWrite, FileShare.Read)
Dim Sl As New XmlSerializer(GetType(Me))
Sl.Serialize(f, Me)
f.Close()
End Sub

Public Shared Function Deserialize(ByVal filename As String)
Dim f As New FileStream(filename, FileMode.Open, FileAccess.ReadWrite, FileShare.Read)
Dim Sl As New XmlSerializer(GetType(Me))
Deserialize = Sl.Deserialize(f)
f.Close()
End Sub
End Class

使用时:

'记录:
Dim r As New MyRecords
r.Record1 = 123
... '记录完毕
r.Serialize("C:\MySettings.XML")

'恢复:
Dim r As MyRecords
r = r.Deserialize("C:\MySettings.XML")
Montaque 2002-10-03
  • 打赏
  • 举报
回复
1.你可以设置一个启动form的Cursor,比如:
Dim frmLogin As New frmLogin()
'frmLogin.Cursor = Cursors.WaitCursor
frmLogin.ShowDialog()

封锁鼠标,你可以把鼠标限制在一个范围内,用cursor.Clip设置
2.这种界面上的东西,改为picture吧,如果你没有什么程序控制的话。
3..Net内置了XML的读写,相当方便。你可以看一下我的文章,关于数据读写:
http://www.csdn.net/develop/read_article.asp?id=15011
weity 2002-10-03
  • 打赏
  • 举报
回复
关于问题1:
这个Me变量在module里面就不好用了,而我的大部分方法都放在了module里面。
在那里该怎么使用啊??

例如:
从Main()启动,处理初始化的时候,我需要封锁鼠标,禁止用户使用。
该怎么做?

关于问题2:
可以使用工具在界面上直接画出吗?
写事件,心里没有谱。

第三个问题,还有那个高手知道啊!请帮帮我!
weity 2002-10-03
  • 打赏
  • 举报
回复
thank you everyone
sumtec 2002-10-03
  • 打赏
  • 举报
回复
Line 和 Shape 在VB.NET里面应该是用Graphics画出来的。所以应该用一个什么东西着祝您要画的区域,然后用该东西的CreateGraphics产生Graphics,然后用这个Graphics画徒刑。所以说用PicutreBox可能字面上会比较好理解,不过我个人怀疑PictureBox占用的资源会比较多,用Label可能就是为了避免这一点吧?

关于怎么用Graphics画直线什么的,请查找相应文章,在此不再熬述。
DragonCity 2002-10-02
  • 打赏
  • 举报
回复
1.
Me.Cursor = Cursors.WaitCursor
'do your operations
Me.Cursor = Cursors.Default

2.水平或者垂直的,可以用LABEL 控件代替,否则应该使用Graphics对象来画图,例如在paint事件之中。

3. i don't know. up.

16,554

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧