阅读:1804回复:2
请教,MO的图例问题
<P>我在设置图例为通过唯一值显示时遇到这样的问题;</P>
<P>在图例设置窗口选择通过combobox选择唯一值图例。然后利用字段进行显示图例。我想点击字段,在图例设置窗口就自动更新图例显示。但是现在遇到了这样的问题。第一次显示正确,再次点击时说对象不能在上下文中卸载。请问如何解决。</P> <P>代码如下</P> <P>Private Sub cboFieldname_Click()</P> <P>Call showUniqueSymbol(cboFieldname.Text)</P> <P>End Sub</P> <P>Private Sub showUniqueSymbol(rendField As String) Dim strsFieldValue As New MapObjects2.Strings Set fld = flds(rendField) If fld Is Nothing Then Exit Sub recs.MoveFirst Do While Not recs.EOF strsFieldValue.Add fld.Value recs.MoveNext Loop If picUniqueSym.Count > 1 Then For i = (picUniqueSym.Count - 1) To 1 Step -1 Unload picUniqueSym(i) Unload txtUniqueValue(i) Next End If Set vmr = New MapObjects2.ValueMapRenderer vmr.Field = rendField vmr.ValueCount = strsFieldValue.Count For i = 0 To strsFieldValue.Count - 1 vmr.Value(i) = strsFieldValue(i) Next i 'picUniqueSym(0).Visible = True picUniqueSym(0).BackColor = vmr.Symbol(0).Color txtUniqueValue(0).Text = vmr.Value(0) For i = 1 To strsFieldValue.Count - 1 Load picUniqueSym(i) With picUniqueSym(i) .Left = picUniqueSym(0).Left .Width = picUniqueSym(0).Width .Height = picUniqueSym(0).Height .Top = picUniqueSym(i - 1).Top + 260 .BackColor = vmr.Symbol(i).Color .Visible = True End With Load txtUniqueValue(i) With txtUniqueValue(i) .Left = txtUniqueValue(0).Left .Width = txtUniqueValue(0).Width .Height = txtUniqueValue(0).Height .Top = txtUniqueValue(i - 1).Top + 260 .Text = vmr.Value(i) .Visible = True End With Next i End Sub</P> |
|
1楼#
发布于:2004-08-09 08:12
先把上次的结果清空吧?
|
|
|
2楼#
发布于:2004-08-09 12:46
<P>把什么清空呢,我想卸载</P><P>If picUniqueSym.Count > 1 Then
For i = (picUniqueSym.Count - 1) To 1 Step -1 Unload picUniqueSym(i) Unload txtUniqueValue(i) Next End If</P><P>但是不行啊 </P> |
|