标题:[求助]我需要画一螺旋四方,急需大家帮个忙!
只看楼主
kaishiuexi
Rank: 1
等 级:新手上路
帖 子:264
专家分:0
注 册:2007-6-8
 问题点数:0 回复次数:9 
[求助]我需要画一螺旋四方,急需大家帮个忙!

窗体中心添加一标签lab(0)
要求窗体加载后动态的添加80个标签lab(1)--lab(80)
并且按螺旋状排序,形如:
lab(64) lab(63) - - - - - - lab(56)
lab(65) lab(36) - - - - - - lab(55)
- lab(37) - - - - - - lab(54)
- - - lab(4) lab(3) lab(2) - - -
- - - lab(5) lab(0) lab(1) - - -
- - - lab(6) lab(7) lab(8) - - -
- - - - - - - - -
- - - - - - - - -
lab(72) lab(73) - - - - - - lab(80)

搜索更多相关主题的帖子: lab 螺旋 窗体 动态 
2007-07-11 08:46
kaishiuexi
Rank: 1
等 级:新手上路
帖 子:264
专家分:0
注 册:2007-6-8
得分:0 

高手帮帮忙吧,急死了~~~~~


当白天又一次把黑夜按翻在床上的时候,太阳就出生了……
2007-07-11 17:08
jaychang
Rank: 1
等 级:禁止访问
帖 子:148
专家分:0
注 册:2007-5-3
得分:0 

还没有弄明白你要做什么呢


http://bbs.    编程GIS论坛
交流软件开发技术与GIS技术
2007-07-11 17:16
kaishiuexi
Rank: 1
等 级:新手上路
帖 子:264
专家分:0
注 册:2007-6-8
得分:0 

我说的已经非常的明白了


当白天又一次把黑夜按翻在床上的时候,太阳就出生了……
2007-07-11 18:07
随风逐流
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:passerby
等 级:版主
威 望:8
帖 子:4054
专家分:271
注 册:2007-6-13
得分:0 

我也看不明白你要实现什么功能


[url=http://www./html/6/6694/]极道金丹[/url][url=http://www./html/2/2849/]九阴九阳[/url][url=http://www./html/2/2596/]凡人修仙传[/url]
2007-07-11 20:30
kaishiuexi
Rank: 1
等 级:新手上路
帖 子:264
专家分:0
注 册:2007-6-8
得分:0 

我晕,就是在窗体上添加80个标签,这80个标签的位置以固定的lab(0)为中心按逆时针方向螺旋排列,如题目的图所示!


当白天又一次把黑夜按翻在床上的时候,太阳就出生了……
2007-07-11 21:34
simpson
Rank: 3Rank: 3
等 级:论坛游民
威 望:7
帖 子:863
专家分:17
注 册:2006-11-16
得分:0 
动态添加控件方法.
object.Add (ProgID, name, container)

参数说明:
Object 必需的。一个对象表达式,其值是“应用于”列表中的一个对象。
ProgID 必需的。一个标识控件的字符串。大多数控件的 ProgID 都可通过查看对象浏览器来决定。控件的 ProgID 是由控件的库和类组成的。
例如,CommandButton 控件的 ProgID 是 VB.CommandButton。在ProgID 与对象浏览器中所显示的不一样的情况下,Visual Basic
将显示一个包括正确 ProgId 的错误信息。
name 必要的。一个字符串,用来标识集合的成员。
container 可选的。一个对象引用,它指定控件的容器。如果没有指定或为NULL,缺省值为 Controls 集合所属的容器。通过指定该参数,可
以把一个控件放置在任何现存的容器控件(如 Frame 控件)中。用户控件或 ActiveX 文档也可以作为一个容器

例:
Private Sub Form_Load()
Form1.Controls.Add "VB.Label", "lab", Form1
With Form1.cmdOk
.Visible = True
.Width = 500
.Caption = "确认(&Y)"
End With
End Sub

[此贴子已经被作者于2007-7-11 22:55:36编辑过]


全国最大的 Java专业电子书免费分享[url]http:///in.asp?id=xrmao[/url]
2007-07-11 22:54
kaishiuexi
Rank: 1
等 级:新手上路
帖 子:264
专家分:0
注 册:2007-6-8
得分:0 

这个我懂,现在问题的关键是顺序问题(各标签的位置必须要按逆时针螺旋排列)!谢谢大家的热情帮助!


当白天又一次把黑夜按翻在床上的时候,太阳就出生了……
2007-07-12 01:09
心中有剑
Rank: 2
等 级:新手上路
威 望:5
帖 子:611
专家分:0
注 册:2007-5-18
得分:0 

真个比较难!
Private lngH&, lngW&

Private Sub Command1_Click()
lngH = Val(Text1.Text)
lngW = Val(Text2.Text)
Dim i&, j&
For j = 0 To lngH - 1
For i = 0 To lngW - 1
Print Format(getNum(i, j), "@@@@");
Next
Print
Next
End Sub

Private Function getNum&(x&, y&)
If x < 0 Or x >= lngW Or y < 0 Or y >= lngH Then
getNum = -1
Exit Function
End If
Dim startN&, startX&, startY&, endX&, endY&, c&, n&
startN = 1
startX = 0: endX = lngW - 1
startY = 0: endY = lngH - 1
c = calcCircleIndex(startX, endX, startY, endY, x, y)
startN = startN + calcCircleSum(c, endX - startX + 1, endY - startY + 1)

startX = startX + c
endX = endX - c
startY = startY + c
endY = endY - c

n = startN
If y = startY Then
n = n + x - startX
getNum = n
Exit Function
End If

n = n + endX - startX
If x = endX Then
n = n + y - startY
getNum = n
Exit Function
End If

n = n + endY - startY
If y = endY Then
n = n + endX - x
getNum = n
Exit Function
End If

n = n + endX - startX
If x = startX Then
n = n + endY - y
getNum = n
Exit Function
End If
getNum = -1
End Function

Private Function calcCircleIndex&(startX&, endX&, startY&, endY&, x&, y&)
Dim c&
c = y - startY
If c > endY - y Then c = endY - y
If c > x - startX Then c = x - startX
If c > endX - x Then c = endX - x
calcCircleIndex = c
End Function

Private Function calcCircleSum&(c&, w&, h&)
If c < 1 Then
calcCircleSum = 0
Else
calcCircleSum = (w + w + h + h - 4) * c - 8 * calcNumberSum(c - 1)
End If
End Function

Private Function calcNumberSum&(n&)
If n < 1 Then
calcNumberSum = 0
ElseIf (n And 1) = 1 Then
calcNumberSum = n * (n - 1) \ 2 + n
Else
calcNumberSum = (n + 1) * n \ 2
End If
End Function
你用这个改改了


2007-07-12 10:14
kaishiuexi
Rank: 1
等 级:新手上路
帖 子:264
专家分:0
注 册:2007-6-8
得分:0 

谢谢楼上兄弟,问题解决了!


当白天又一次把黑夜按翻在床上的时候,太阳就出生了……
2007-07-12 12:13



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-154523-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.804843 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved