1 set myform = new form1和
dim myform as new form1及
static my form = new form1的区别是什么?set myform = new form1是显式产生一个form1的实例
dim myform as new form1是声明一个变量并自动生成其实例(此时并未生成,要在第一次引用到myform这个变量时才会自动生成)
static my form = new form1与第二句基本相同,只是变量的生命期不同,它是静态变量,使用 Static 语句声明的变量会一直保持其值,直至该模块复位或重新启动。
2,用set myform = new form1和
dim myform as new form1后,myform 从form1 中继承了什么?代码设定的属性和 方法能继承吗?
能,几乎和form1是一样的.3,为什么set myform =new form1以后,在form1中调用的windowmove API, form1不可以用,而myform却好用呢?
4,有什么办法可以让 dim myform as new form1 的每个窗体(包括form1)都实现 调用windowmove API你把API的声明写到窗体中,就应该可以解决这两个问题了
dim myform as new form1及
static my form = new form1的区别是什么?set myform = new form1是显式产生一个form1的实例
dim myform as new form1是声明一个变量并自动生成其实例(此时并未生成,要在第一次引用到myform这个变量时才会自动生成)
static my form = new form1与第二句基本相同,只是变量的生命期不同,它是静态变量,使用 Static 语句声明的变量会一直保持其值,直至该模块复位或重新启动。
2,用set myform = new form1和
dim myform as new form1后,myform 从form1 中继承了什么?代码设定的属性和 方法能继承吗?
能,几乎和form1是一样的.3,为什么set myform =new form1以后,在form1中调用的windowmove API, form1不可以用,而myform却好用呢?
4,有什么办法可以让 dim myform as new form1 的每个窗体(包括form1)都实现 调用windowmove API你把API的声明写到窗体中,就应该可以解决这两个问题了
ByVal x As Long, ByVal y As Long, _
ByVal nWidth As Long, ByVal nHeightAs Long, _
ByVal bRepaint As Long) As Long
写在form1中吗?
dim myform as new form1后,myform 从form1 中继承了什么?代码设定的属性和 方法能继承吗?
能,几乎和form1是一样的.
几乎是什么意思,如果不是完全一样,区别是什么?
openatable
End SubPublic Sub openatable()
On Error GoTo userCancelled
Dim response As String
theFile = MapInfo.Eval("FileOpenDlg("""","""",""TAB"",""Open Table"")")
‘thefile 是文件路径
If theFile <> "" Then
tabName = MapInfo.Eval("PathToTableName$( """ & theFile & """ )")
'获得文件名
MapInfo.Do "Open Table """ & theFile & """ as " & tabName
'在后台打开表文件,其中包含图片(地图),但不可见 Else
Resume Next
End If
If thereisamap Then
MsgBox "新建地图窗口吗?", vbYesNoCancel + vbQuestion, "打开方式"
response = MsgBox("新建地图窗口吗?", vbYesNoCancel + vbQuestion, "打开方式")
If response = vbYes Then
Set myform1 = New frmMap ‘???????????????
With myform1
.Caption = tabName
.Show
End With
MapInfo.Do "Set Next Document Parent " & myform1.hwnd & " Style 1"
'让myform1作为下面打开的document(即图片)的容器
MapInfo.Do "map from " & tabName
'打开表中的document(图片)
mapid = Val(MapInfo.Eval("FrontWindow()"))
'获取当前document(图片)窗口的id
Else
Exit Sub
End If
Else
Set myform1 = New frmMap
With myform1
.Caption = tabName
.Show
End With
MapInfo.Do "Set Next Document Parent " & myform1.hwnd & " Style 1"
MapInfo.Do "Map From " & tabName
mapid = Val(MapInfo.Eval("FrontWindow()"))
thereisamap = True
End If userCancelled:
Resume Next
End Subfrmmap的代码:
Private Sub Form_Load()
frmMap.ScaleMode = 3
End Sub Private Sub Form_Resize()
Dim mHwnd As Long ' Holds the window handle
mHwnd = CLng(MapInfo.Eval("WindowInfo(" & mapid & "," & WIN_INFO_WND & ")"))
' Pass the 'new' form dimensions to the MoveWindow API
MoveWindow mHwnd, 0, 0, ScaleWidth, ScaleHeight, 1
End Sub
model1的源代码
Declare Function MoveWindow Lib "user32" (ByVal hwnd As Long, _
ByVal x As Long, ByVal y As Long, _
ByVal nWidth As Long, ByVal nHeight As Long, _
ByVal bRepaint As Long) As Long您给看看,不胜感激。
好想你呀,你在哪儿呀。
不看算了,下次不要这么捉弄人了!!!!
不看算了,下次不要这么捉弄人了!!!! 你这话是什么意思?我上面回答了那么多,别的不说吧,光打字也打得不少啦!你倒好,这样说我,你有没有良心啊?你提的问题,别人还得一天二十四小时分分秒秒地实时关注啊!
不好意思,我只会你所说的"捉弄人",白白了您呢!
,几句抱怨而已,我知道你忙,你说看看代码,可贴了那么长时间,太阳也下山了,我每天
有10个小时守着贴子等,光等着说帮我看代码的人到来。
你不看也就算了,早知今日何必当初,还“不好意思,我只会你所说的"捉弄人",白白了您呢!“,会不会打字,俺看不懂的,帮忙解释一下好不好,恶心!!!你以为你是谁, 离开你csdn就不转啦,你到底会不会还不一定呢。
谢谢你和你打的字,该给的分我一定给的,放心好了。下次也不用劳你大架了,我只需要真心帮忙的人回答问题。哎,谁叫咱没有本事呢,只好让人寒碜了。
为什么set myform =new form1以后,在form1中调用的windowmove API(让窗口中的picture跟窗口一起变大小), 原来的form1居然不可以实现该功能了,而myform却好用?有什么办法可以让 dim myform as new form1 的每个窗体(包括form1)都实现 调用windowmove API。
我的问题是用 set myform=new form1 动态创建了几个窗体后,只有最新创建的
窗体可以用 api, 前面几个窗体中的图片都不再随窗体动了,我所有的问题源出于此。源码如上。
donglw(天行):
请你告诉我怎样找到。谢谢。
真是一语惊醒梦中人!!!!!!!!!!!!!!!!!!
给分给分!!!!!
谢谢谢谢谢谢谢谢谢谢谢谢 谢谢 谢谢 谢谢
谢谢 谢谢 谢谢 谢谢
谢谢 谢谢 谢谢
谢谢 谢谢 谢谢
谢谢 谢谢 谢谢 谢谢
谢谢 谢谢 谢谢 谢谢
谢谢 谢谢 谢谢 谢谢
谢谢 谢谢谢谢谢谢谢谢谢谢谢谢 谢谢
谢谢 谢谢 谢谢 谢谢
谢谢 谢谢 谢谢 谢谢
谢谢 谢谢 谢谢 谢谢
谢谢 谢谢 谢谢 谢谢
谢谢 谢谢 谢谢 谢谢