一区二区三区成人-一区二区三区www-一区二区三区 日韩-一区二区日韩欧美-一区二区日韩精品中文字幕-一区二区日韩

18063219
級別: *
精華主題: * 篇
發帖數量: * 個
工控威望: * 點
下載積分: * 分
在線時間: (小時)
注冊時間: *
最后登錄: *
查看18063219的 主題 / 回貼
樓主  發表于: 2010-04-29 13:45
某程序的功能是a1<=q<a2,Shape1.FillColor = vbGreen;q<a4,Shape1.FillColor = vbRed
a2<=q<a3,Shape2.FillColor = vbGreen,Shape2.FillColor = vbGreen  ;q<a5,Shape2.FillColor = vbRed
a3<=q<15,Shape3.FillColor = vbGreen,Shape2.FillColor = vbGreen,Shape1.FillColor = vbGreen;q<a6,Shape3.FillColor = vbRed
我寫的程序存在的問題:shape1顯示正常,其余兩個顯示綠色沒問題,但若要顯示紅色不能顯示,任然是綠色,不發生變化。
Private Sub Command2_Click()
Const pi = 3.14159
Dim t As Single, y As Single, p As Single
Dim a1 As Single, a2 As Single, a3 As Single, a4 As Single, a5 As Single, a6 As Single, q As Single



a1 = Val(Text1.Text)
a2 = Val(Text2.Text)
a3 = Val(Text3.Text)
a4 = Val(Text4.Text)
a5 = Val(Text5.Text)
a6 = Val(Text6.Text)
For t = 0 To 24 Step 0.0003
y = -2 * Sin(t * pi / 1.5) + 3

p = y / 5
Text8.Height = Text7.Height * (1 - p)
q = p * 15
Text9.Text = q
Shape1.Refresh
DoEvents
Select Case q


Case 0 To a4
Shape1.FillColor = vbRed
Case a1 To a2
Shape1.FillColor = vbGreen


Case a4 To a5
Shape2.FillColor = vbRed
Case a2 To a3
Shape2.FillColor = vbGreen
Shape1.FillColor = vbGreen


Case a5 To a6
Shape3.FillColor = vbRed
Case a3 To 15
Shape3.FillColor = vbGreen
Shape2.FillColor = vbGreen
Shape1.FillColor = vbGreen


End Select
Next t
End Sub
[ 此帖被18063219在2010-04-29 20:41重新編輯 ]
sjm213
有小知識,無大學問。
級別: 論壇版主

精華主題: 7 篇
發帖數量: 5235 個
工控威望: 7459 點
下載積分: 159380 分
在線時間: 3186(小時)
注冊時間: 2007-11-21
最后登錄: 2025-01-26
查看sjm213的 主題 / 回貼
1樓  發表于: 2010-04-29 23:16
Select Case 結構在滿足第一個條件后就自動跳到End Select。
而你的幾個CASE中有重疊部分,所以只會前者有效。
你可以試一下IF …Then
ydp
級別: *
精華主題: * 篇
發帖數量: * 個
工控威望: * 點
下載積分: * 分
在線時間: (小時)
注冊時間: *
最后登錄: *
查看ydp的 主題 / 回貼
2樓  發表于: 2010-04-30 12:24
問題找到了,a1 = Val(Text1.Text),這樣的寫法,是取整數,而且 你設置的是有小數點
本帖最近評分記錄:
  • 下載積分:+1(vili) 熱心助人
    ydp
    級別: *
    精華主題: * 篇
    發帖數量: * 個
    工控威望: * 點
    下載積分: * 分
    在線時間: (小時)
    注冊時間: *
    最后登錄: *
    查看ydp的 主題 / 回貼
    3樓  發表于: 2010-04-30 12:25
    兩種解決問題,一就,你把所有數據都變大100倍,不要小數(好多似類的數量都是這樣數)
    本帖最近評分記錄:
  • 下載積分:+1(18063219)
  • 下載積分:+1(vili) 熱心助人
    ydp
    級別: *
    精華主題: * 篇
    發帖數量: * 個
    工控威望: * 點
    下載積分: * 分
    在線時間: (小時)
    注冊時間: *
    最后登錄: *
    查看ydp的 主題 / 回貼
    4樓  發表于: 2010-04-30 12:26
    另外一種就,你把字符串,轉為FU點數
    ydp
    級別: *
    精華主題: * 篇
    發帖數量: * 個
    工控威望: * 點
    下載積分: * 分
    在線時間: (小時)
    注冊時間: *
    最后登錄: *
    查看ydp的 主題 / 回貼
    5樓  發表于: 2010-04-30 12:33
    Dim a1 As Double
    Dim a2 As Double
    Dim K as double //定義水位
    a2 = CDbl(Text1.Text)
    a2 = CDbl(Text1.Text)
    k = CDbl(水位的字符串)
    if k <= a2 then
      Shape1.FillColor = vbRed
    end if
    if k >= a1 then
      Shape1.FillColor = vbGreen
    end if
    本帖最近評分記錄:
  • 下載積分:+1(vili) 熱心助人
    wang115828
    學習
    級別: 略有小成
    精華主題: 0
    發帖數量: 96 個
    工控威望: 259 點
    下載積分: 549 分
    在線時間: 49(小時)
    注冊時間: 2009-04-07
    最后登錄: 2024-07-25
    查看wang115828的 主題 / 回貼
    6樓  發表于: 2010-04-30 17:15
    學習了
    vili
    級別: *
    精華主題: * 篇
    發帖數量: * 個
    工控威望: * 點
    下載積分: * 分
    在線時間: (小時)
    注冊時間: *
    最后登錄: *
    查看vili的 主題 / 回貼
    7樓  發表于: 2010-05-02 07:53
    就例如,C水位,
    如果當前水位在13.5-14之間,你如何顯示??顯示綠色,還是紅色,這個在你上面的程序沒有處理。
    18063219
    級別: *
    精華主題: * 篇
    發帖數量: * 個
    工控威望: * 點
    下載積分: * 分
    在線時間: (小時)
    注冊時間: *
    最后登錄: *
    查看18063219的 主題 / 回貼
    8樓  發表于: 2010-05-06 08:54
    謝謝各位了,非常感謝

    主站蜘蛛池模板: 奇米777狠狠| 精品国产免费第一区二区 | 亚洲国产精品牛在线 | 本土自拍| 国产福利一区二区三区 | 韩国伦理hd| 男男按摩1069gⅴ| 日韩精品免费一区二区 | 国产成人亚洲综合网站不卡 | 国产经典一区 | 欧美一级v片 | 日韩在线二区全免费 | 极品在线| 欧洲vodafonewi精品 | 九九热这里只有精品视频免费 | 亚洲图片一区二区三区 | 天天色踪合 | 白丝校花被扒开双腿喷水小说 | 亚洲第一天堂网 | 国产第一自拍 | 無码一区中文字幕少妇熟女H | 69堂最新地域网名 | 国产亚洲一级精品久久 | 人人人人人看碰人人免费 | 日本xxxx19| girlfriend动漫在线播放 | 好男人在线观看hd中字 | 亚洲国产精品久久网午夜 | 色综合天天综合网看在线影院 | 国产91在线精品 | 红楼梦黄色小说 | 日本动漫打扑克动画片樱花动漫 | 农村妇女野外性生话免费视频 | 国产精品欧美在线观看 | 日本中文字幕一区二区高清在线 | 公交车上插入 | 欧美在线高清 | 久久这里只有精品国产精品99 | 国产精品久久久天天影视香蕉 | 成人国产午夜在线视频 | 无码区国产区在线播放 |