史萊姆論壇

史萊姆論壇 (http://forum.slime.com.tw/)
-   程式語言討論區 (http://forum.slime.com.tw/f76.html)
-   -   各位大大好~我又有疑問要問了...VB6.0(還是Command的問題..和之前不一樣) (http://forum.slime.com.tw/thread248259.html)

kppne0931 2009-05-26 06:11 PM

各位大大好~我又有疑問要問了...VB6.0(還是Command的問題..和之前不一樣)
 
我想要問的是按下Command 然後就跑出一個小視窗這部分我想像記得有一個較Msbox的東西可以用....


但是我現在 要用的是 按下按鈕 出現以下文字

連線中。
連線中。。
連線中。。。


目的是讓他一個一個句點加上去...(每1句大概都間隔0.5秒)
以上大概跑2次。。。


2次跑完就出現連線成功 

以上不需要真正連接SQL 只要字面上的就可以了....



請求解答...

劍痞憶秋年 2009-05-26 09:58 PM

MSGBOX 可能無法達到你要的,因為要按一下才會再換下一個新的訊息(無法直接 控制/改變 訊息內容)
所以咧,我就用表單 + TIMER 來試做你要的,不過看不到最後的 連線成功
試看看如何
PHP 語法:

VERSION 5.00
Begin VB
.Form Form1 
   Caption         
=   "Form1"
   
ClientHeight    =   3195
   ClientLeft      
=   60
   ClientTop       
=   345
   ClientWidth     
=   4680
   LinkTopic       
=   "Form1"
   
LockControls    =   -1  'True
   ScaleHeight     =   3195
   ScaleWidth      =   4680
   StartUpPosition =   3  '
系統預設值
   Begin VB
.CommandButton Command1 
      Caption         
=   "Command1"
      
Height          =   495
      Left            
=   1440
      TabIndex        
=   0
      Top             
=   1200
      Width           
=   1215
   End
End
Attribute VB_Name 
"Form1"
Attribute VB_GlobalNameSpace False
Attribute VB_Creatable 
False
Attribute VB_PredeclaredId 
True
Attribute VB_Exposed 
False


Option Explicit

Private Sub Command1_Click()
  
With Form2
    
'清空計數器
    .Times = 0
    .Show
  End With
End Sub 

PHP 語法:

VERSION 5.00
Begin VB
.Form Form2 
   Caption         
=   "Form2"
   
ClientHeight    =   3195
   ClientLeft      
=   60
   ClientTop       
=   345
   ClientWidth     
=   4680
   LinkTopic       
=   "Form2"
   
LockControls    =   -1  'True
   ScaleHeight     =   3195
   ScaleWidth      =   4680
   StartUpPosition =   3  '
系統預設值
   Begin VB
.Timer Timer1 
      Interval        
=   500
      Left            
=   3360
      Top             
=   2160
   End
   Begin VB
.Label Label1 
      Caption         
=   "Label1"
      
Height          =   495
      Left            
=   600
      TabIndex        
=   0
      Tag             
=   "連線中。"
      
Top             =   960
      Width           
=   1215
   End
End
Attribute VB_Name 
"Form2"
Attribute VB_GlobalNameSpace False
Attribute VB_Creatable 
False
Attribute VB_PredeclaredId 
True
Attribute VB_Exposed 
False
Option Explicit

Private intTimes As Integer

Private Sub Form_Initialize()
  
intTimes 0
  Label1
.Caption Label1.Tag
End Sub

Public Property Get Times() As Integer
    Times 
intTimes
End Property

Public Property Let Times(ByVal vNewValue As Integer)
     
intTimes vNewValue
End Property

Private Sub Form_Load()
    
Label1.Caption Label1.Tag
End Sub

Private Sub Timer1_Timer()
    
'
    If intTimes = 2 Then
       Label1.Caption = "連線成功"
       Unload Me
    End If
    Label1.Caption = Label1.Caption & "。"
    intTimes = intTimes + 1
End Sub 


kppne0931 2009-05-26 10:32 PM

引用:

作者: 劍痞憶秋年 (文章 2158828)
MSGBOX 可能無法達到你要的,因為要按一下才會再換下一個新的訊息(無法直接 控制/改變 訊息內容)
所以咧,我就用表單 + TIMER 來試做你要的,不過看不到最後的 連線成功
試看看如何
PHP 語法:

VERSION 5.00
Begin VB
.Form Form1 
   Caption         
=   "Form1"
   
ClientHeight    =   3195
   ClientLeft      
=   60
   ClientTop       
=   345
   ClientWidth     
=   4680
   LinkTopic       
=   "Form1"
   
LockControls    =   -1  'True
   ScaleHeight     =   3195
   ScaleWidth      =   4680
   StartUpPosition =   3  '
系統預設值
   Begin VB
.CommandButton Command1 
      Caption         
=   "Command1"
      
Height          =   495
      Left            
=   1440
      TabIndex        
=   0
      Top             
=   1200
      Width           
=   1215
   End
End
Attribute VB_Name 
"Form1"
Attribute VB_GlobalNameSpace False
Attribute VB_Creatable 
False
Attribute VB_PredeclaredId 
True
Attribute VB_Exposed 
False


Option Explicit

Private Sub Command1_Click()
  
With Form2
    
'清空計數器
    .Times = 0
    .Show
  End With
End Sub 

PHP 語法:

VERSION 5.00
Begin VB
.Form Form2 
   Caption         
=   "Form2"
   
ClientHeight    =   3195
   ClientLeft      
=   60
   ClientTop       
=   345
   ClientWidth     
=   4680
   LinkTopic       
=   "Form2"
   
LockControls    =   -1  'True
   ScaleHeight     =   3195
   ScaleWidth      =   4680
   StartUpPosition =   3  '
系統預設值
   Begin VB
.Timer Timer1 
      Interval        
=   500
      Left            
=   3360
      Top             
=   2160
   End
   Begin VB
.Label Label1 
      Caption         
=   "Label1"
      
Height          =   495
      Left            
=   600
      TabIndex        
=   0
      Tag             
=   "連線中。"
      
Top             =   960
      Width           
=   1215
   End
End
Attribute VB_Name 
"Form2"
Attribute VB_GlobalNameSpace False
Attribute VB_Creatable 
False
Attribute VB_PredeclaredId 
True
Attribute VB_Exposed 
False
Option Explicit

Private intTimes As Integer

Private Sub Form_Initialize()
  
intTimes 0
  Label1
.Caption Label1.Tag
End Sub

Public Property Get Times() As Integer
    Times 
intTimes
End Property

Public Property Let Times(ByVal vNewValue As Integer)
     
intTimes vNewValue
End Property

Private Sub Form_Load()
    
Label1.Caption Label1.Tag
End Sub

Private Sub Timer1_Timer()
    
'
    If intTimes = 2 Then
       Label1.Caption = "連線成功"
       Unload Me
    End If
    Label1.Caption = Label1.Caption & "。"
    intTimes = intTimes + 1
End Sub 




感覺上...很複雜耶....不然大大你看一下我用的不知道要如何改...


Private Sub Command3_Click()
Dim pw As String
pw = "kenc77996"

If Text4.Text <> pw Then

Label15.Caption = "帳號或密碼錯誤!"
Else


pw = "ken33664"

If Text5.Text <> pw Then

Label15.Caption = "帳號或密碼錯誤!"
Else
Label15.Caption = "登入成功!感謝您使用本程式"
Frame1.Enabled = True
Frame2.Enabled = True
Check1.Enabled = True
Check2.Enabled = True
Check3.Enabled = True
Check4.Enabled = True
Check5.Enabled = True
Check6.Enabled = True
Check7.Enabled = True
Check8.Enabled = True
Check9.Enabled = True
Check10.Enabled = True
Check11.Enabled = True
Text1.Enabled = True
Text2.Enabled = True
Command1.Enabled = True
Command2.Enabled = True
End If
End If

End Sub


以上片段...按下Command出現連線中...一樣跑出句號...然後再檢測PW 如果正確 則顯示登入成功 如果錯誤 則顯示帳號或密碼錯誤 請問如果這樣要如何改...

劍痞憶秋年 2009-05-26 10:46 PM

這樣改如何,我是沒試,因為有很多我也不知道你做何用的物件,所以沒實做/run,不過觀念絕對是對的
PHP 語法:

Dim intTimes as Integer

Private Sub Timer1_Timer() 
    

    If intTimes >= 2  and Frame1.Enabled = True Then 
       Label1.Caption = "連線成功" 
       Timer1.Enabled = False
    End If 
    Label1.Caption = Label1.Caption & "。" 
    intTimes = intTimes + 1 
End Sub  

Private Sub Form_Load() 
    Label1.Caption = "連線中。"
    intTimes = 0
End Sub 

Private Sub Command3_Click()
Dim pw As String

Label1.Caption = "連線中。"
intTimes = 0
Timer1.Enabled = True

pw = "kenc77996"
If Text4.Text <> pw Then
  Label15.Caption = "帳號或密碼錯誤!"
Else
  pw = "ken33664"

  If Text5.Text <> pw Then

     Label15.Caption = "帳號或密碼錯誤!"
  Else
     Label15.Caption = "登入成功!感謝您使用本程式"
     Frame1.Enabled = True
     Frame2.Enabled = True
     Check1.Enabled = True
     Check2.Enabled = True
     Check3.Enabled = True
     Check4.Enabled = True
     Check5.Enabled = True
     Check6.Enabled = True
     Check7.Enabled = True
     Check8.Enabled = True
     Check9.Enabled = True
     Check10.Enabled = True
     Check11.Enabled = True
     Text1.Enabled = True
     Text2.Enabled = True
     Command1.Enabled = True
     Command2.Enabled = True
    End If
  End If

End Sub 


kppne0931 2009-05-27 06:18 AM

引用:

作者: 劍痞憶秋年 (文章 2158852)
這樣改如何,我是沒試,因為有很多我也不知道你做何用的物件,所以沒實做/run,不過觀念絕對是對的
PHP 語法:

Dim intTimes as Integer

Private Sub Timer1_Timer() 
    

    If intTimes >= 2  and Frame1.Enabled = True Then 
       Label1.Caption = "連線成功" 
       Timer1.Enabled = False
    End If 
    Label1.Caption = Label1.Caption & "。" 
    intTimes = intTimes + 1 
End Sub  

Private Sub Form_Load() 
    Label1.Caption = "連線中。"
    intTimes = 0
End Sub 

Private Sub Command3_Click()
Dim pw As String

Label1.Caption = "連線中。"
intTimes = 0
Timer1.Enabled = True

pw = "kenc77996"
If Text4.Text <> pw Then
  Label15.Caption = "帳號或密碼錯誤!"
Else
  pw = "ken33664"

  If Text5.Text <> pw Then

     Label15.Caption = "帳號或密碼錯誤!"
  Else
     Label15.Caption = "登入成功!感謝您使用本程式"
     Frame1.Enabled = True
     Frame2.Enabled = True
     Check1.Enabled = True
     Check2.Enabled = True
     Check3.Enabled = True
     Check4.Enabled = True
     Check5.Enabled = True
     Check6.Enabled = True
     Check7.Enabled = True
     Check8.Enabled = True
     Check9.Enabled = True
     Check10.Enabled = True
     Check11.Enabled = True
     Text1.Enabled = True
     Text2.Enabled = True
     Command1.Enabled = True
     Command2.Enabled = True
    End If
  End If

End Sub 


剛剛去試了一下.....沒效果 不知道哪裡出問題 不知道能不能改成 用小視窗表示 :連線中.... (每個間隔0.5秒)帳號或密碼錯誤(此時實小視窗面出現Command用來關閉視窗 )    還有連線成功也是一樣。。。

mini 2009-05-27 03:20 PM

如圖設定
http://xs839.xs.to/xs839/09223/msg871.jpg

至於密碼設計請自行加入

補充:
請在 Form2 的
語法:

Private Sub Form_Load()

    Label1.Caption = "連線中"
    Timer1.Enabled = True
    Timer1.Interval = 500
   
End Sub

裡面補一句
Command1.Visible = False

kppne0931 2009-05-27 06:36 PM

引用:

作者: mini (文章 2159223)
如圖設定
http://xs839.xs.to/xs839/09223/msg871.jpg

至於密碼設計請自行加入

補充:
請在 Form2 的
語法:

Private Sub Form_Load()

    Label1.Caption = "連線中"
    Timer1.Enabled = True
    Timer1.Interval = 500
   
End Sub

裡面補一句
Command1.Visible = False


線在已經可以顯示連線中了...但是...檢測密碼我不知道要如何改上去...(如果密碼錯誤就在Form2 顯示連線失敗)還有 顯示連線完成時 按下Command vb跑出 "此處需要物件" 為啥會這樣...

kppne0931 2009-05-28 06:48 AM

現在...就只剩下檢測密碼部份要如何改.......拜託各位大大幫助一下吧~

mini 2009-05-28 02:44 PM

http://touch.moehome.jp/up_ssize/dow...958.rar/attach

按下網頁的http://xs839.xs.to/xs839/09224/download372.png 按鈕(旁邊填 mini)即可下載

重點是新增一個模組
並在模組裡使用一個全域變數 sPW
如此一來sPW就可在不同的 Form裡共用

kppne0931 2009-05-28 11:06 PM

引用:

作者: mini (文章 2159532)
http://touch.moehome.jp/up_ssize/dow...958.rar/attach

按下網頁的http://xs839.xs.to/xs839/09224/download372.png 按鈕(旁邊填 mini)即可下載

重點是新增一個模組
並在模組裡使用一個全域變數 sPW
如此一來sPW就可在不同的 Form裡共用


用了之後...發現 已經可以檢測了文字顯示部分也正常 但是 我想要用成檢測2個TEXT(帳密)同時檢測 不知道有沒有辦法

mini 2009-05-29 09:42 AM

引用:

作者: kppne0931 (文章 2159703)
用了之後...發現 已經可以檢測了文字顯示部分也正常 但是 我想要用成檢測2個TEXT(帳密)同時檢測 不知道有沒有辦法

自己在 Form1裡加相關 物件就可以了啊
並在 Form2的 Timer1_Timer事件裡加入比對程式碼
即可
比如
If Form1.Text1 <> sPW Then
改成
If Form1.Text1 <> sPW Or Form1.Text2 <> sID Then

kppne0931 2009-05-29 10:12 AM

引用:

作者: mini (文章 2159775)
自己在 Form1裡加相關 物件就可以了啊
並在 Form2的 Timer1_Timer事件裡加入比對程式碼
即可
比如
If Form1.Text1 <> sPW Then
改成
If Form1.Text1 <> sPW Or Form1.Text2 <> sID Then

那情問FORM1的設置是這樣嗎?
Private Sub Form_Activate()
sPW = "ken33664"
sID = "kenc77996"
End Sub

kppne0931 2009-05-29 10:29 PM

沒人願意幫助我媽?@@...

Living 2009-05-30 01:30 AM

引用:

作者: kppne0931 (文章 2159968)
沒人願意幫助我媽?@@...

不是很確定你需要的是什麼

你是想要輸入之後檢查兩組帳號與密碼

如果輸入與任何一組相同就登入?

是不是這樣?

如果是這樣的話

你可以改成

Form1.Text1 <> sPW1 & Form1.Text1 <> sPW2 Then

kppne0931 2009-05-30 03:53 AM

引用:

作者: Living (文章 2160004)
不是很確定你需要的是什麼

你是想要輸入之後檢查兩組帳號與密碼

如果輸入與任何一組相同就登入?

是不是這樣?

如果是這樣的話

你可以改成

Form1.Text1 <> sPW1 & Form1.Text1 <> sPW2 Then


我需要的是同時檢測2組....


所有時間均為台北時間。現在的時間是 05:28 AM

Powered by vBulletin® 版本 3.6.8
版權所有 ©2000 - 2024, Jelsoft Enterprises Ltd.

『服務條款』

* 有問題不知道該怎麼解決嗎?請聯絡本站的系統管理員 *


SEO by vBSEO 3.6.1