窗体中控件莫名其妙丢失? (vb6.0)

popcorn2255 2002-01-28 02:36:38
各位有没有遇到过这样的情况:

有时打开工程时,窗体中莫名其妙的出现控件丢失,会变成PictureBox控件
等你再一次在部件中去添加该控件时,系统会出现提示:
名称与已存在的模块、工程或对象冲突

请问如何解决?????

操作环境:VB6.0企业版
...全文
541 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
popcorn2255 2002-01-28
  • 打赏
  • 举报
回复

知道了, 就给你吧,但这个问题好像解决的不是很好,很笨很笨的一个方法


ljren_t 2002-01-28
  • 打赏
  • 举报
回复
我上面的意思是说,只能用那个比较费事的方法,别的好像没有了.
想给我分吗,在帖子列表中点你这个帖子最右边的管理就可以看到怎么办了.
popcorn2255 2002-01-28
  • 打赏
  • 举报
回复

TO: ljren_t(立志) 
看不出这些东西能对我的问题有何帮助?
不过还是谢谢你,问一下如何查分,如果我的分数超过20分的话,我就把这20分给你了

ljren_t 2002-01-28
  • 打赏
  • 举报
回复
这是一个窗体文件用记事本打开的,可以看到一些在VB IDE看不到的代码.
其实每个窗体上都记录了这个窗体上所使用的ActiveX control的PropID,所以当版本不一样事必须重新引用.

VERSION 5.00
Object = "{65E121D4-0C60-11D2-A9FC-0000F8754DA1}#2.0#0"; "MSCHRT20.OCX"
Object = "{648A5603-2C6E-101B-82B6-000000000014}#1.1#0"; "MSCOMM32.OCX"
Object = "{67397AA1-7FB1-11D0-B148-00A0C922E820}#6.0#0"; "MSADODC.OCX"
Object = "{8E27C92E-1264-101C-8A2F-040224009C02}#7.0#0"; "MSCAL.OCX"
Object = "{F5BE8BC2-7DE6-11D0-91FE-00C04FD701A5}#2.0#0"; "agentctl.dll"
Object = "{F9043C88-F6F2-101A-A3C9-08002B2F49FB}#1.2#0"; "COMDLG32.OCX"
Begin VB.Form Form1
Caption = "Form1"
ClientHeight = 3195
ClientLeft = 60
ClientTop = 345
ClientWidth = 4680
LinkTopic = "Form1"
ScaleHeight = 3195
ScaleWidth = 4680
StartUpPosition = 3 'Windows Default
Begin MSACAL.Calendar Calendar1
Height = 225
Left = 1860
TabIndex = 1
Top = 330
Width = 975
_Version = 524288
_ExtentX = 1720
_ExtentY = 397
_StockProps = 1
BackColor = -2147483633
Year = 2002
Month = 1
Day = 28
DayLength = 0
MonthLength = 0
DayFontColor = 0
FirstDay = 1
GridCellEffect = 1
GridFontColor = 10485760
GridLinesColor = -2147483632
ShowDateSelectors= -1 'True
ShowDays = -1 'True
ShowHorizontalGrid= -1 'True
ShowTitle = -1 'True
ShowVerticalGrid= -1 'True
TitleFontColor = 10485760
ValueIsNull = 0 'False
BeginProperty DayFont {0BE35203-8F91-11CE-9DE3-00AA004BB851}
Name = "宋体"
Size = 9.01
Charset = 134
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
BeginProperty GridFont {0BE35203-8F91-11CE-9DE3-00AA004BB851}
Name = "宋体"
Size = 9
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
BeginProperty TitleFont {0BE35203-8F91-11CE-9DE3-00AA004BB851}
Name = "宋体"
Size = 12
Charset = 134
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
End
Begin MSChart20Lib.MSChart MSChart1
Height = 285
Left = 510
OleObjectBlob = "Form1.frx":0000
TabIndex = 0
Top = 750
Width = 495
End
Begin MSCommLib.MSComm MSComm1
Left = 630
Top = 1710
_ExtentX = 1005
_ExtentY = 1005
_Version = 393216
End
Begin MSComDlg.CommonDialog CommonDialog1
Left = 2970
Top = 2400
_ExtentX = 847
_ExtentY = 847
_Version = 393216
End
Begin MSAdodcLib.Adodc Adodc1
Height = 330
Left = 2130
Top = 1140
Width = 1200
_ExtentX = 2117
_ExtentY = 582
ConnectMode = 0
CursorLocation = 3
IsolationLevel = -1
ConnectionTimeout= 15
CommandTimeout = 30
CursorType = 3
LockType = 3
CommandType = 8
CursorOptions = 0
CacheSize = 50
MaxRecords = 0
BOFAction = 0
EOFAction = 0
ConnectStringType= 1
Appearance = 1
BackColor = -2147483643
ForeColor = -2147483640
Orientation = 0
Enabled = -1
Connect = ""
OLEDBString = ""
OLEDBFile = ""
DataSourceName = ""
OtherAttributes = ""
UserName = ""
Password = ""
RecordSource = ""
Caption = "Adodc1"
BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851}
Name = "MS Sans Serif"
Size = 8.25
Charset = 0
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
_Version = 393216
End
Begin AgentObjectsCtl.Agent Agent1
Left = 1380
Top = 2160
End
End
Attribute VB_Name = "Form1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit



popcorn2255 2002-01-28
  • 打赏
  • 举报
回复
这样的确可以,在提问前我已试过了,
我重新建了一个工程,把原工程中所有窗体\模块等等都添加到新工程中, 一切都OK
问题是这样挺麻烦的, 因为有好几十个窗体要重新添加一遍,
累啊,添的眼睛都发花了, 我想问问有没有更方便一点的办法,这个问题不止出现了一遍
ljren_t 2002-01-28
  • 打赏
  • 举报
回复
你没有用二进制兼容编译,可以这样,把当前有那些控件的设计窗口从当前工程里Remove,选不保存.
把相应控件从这个工程中移处,保存工程并退出程序.
再次打开工程,把对应控件再次加载上来,再加入刚才remove的设计窗口试试.
popcorn2255 2002-01-28
  • 打赏
  • 举报
回复
不,是同一台机子上,
至问题出现前后仅仅相差2分钟,并且没对工程进行任何移位
再补充一下,该控件在老位置中仍然存在,版本与工程中使用的也一致
griefforyou 2002-01-28
  • 打赏
  • 举报
回复
控件不全,或则控件版本低于工程文件中设置的版本!

<<<等你再一次在部件中去添加该控件时,系统会出现提示:
名称与已存在的模块、工程或对象冲突
>>>

先去除部件"引用",然后再进行添加!



xfyxq 2002-01-28
  • 打赏
  • 举报
回复
这是因为这个控件是一个外部控件(ACTIVEX),现在这个外部控件以经删除或是你拷贝这个程序时,没有连同外部控件一起拷过来,VB就首先提示控件找不到然后用PICBOX代替它。
hycapril1 2002-01-28
  • 打赏
  • 举报
回复
我遇到过此问题
经查明是由于我的程序是在两台机器上座的,,第二台机器上的控件不全.造成的.

1,451

社区成员

发帖
与我相关
我的任务
社区描述
VB 控件
社区管理员
  • 控件
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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