久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

看實(shí)例學(xué)VFP:對組合框控件的再探索

 lygcw9603 2011-12-07

看實(shí)例學(xué)VFP:對組合框控件的再探索時(shí)間:2009-04-11 www. 老馬
組合框控件(combobox)在vfp中也是一個常用的控件,,組合框兼具文本框和列表框的功能,,它的名稱大概也由此而來,。在vfp基礎(chǔ)教程-組合框控件(combobox) 中已經(jīng)比較詳細(xì)地給出了組合框的常用屬性和方法,。

在組合框控件的應(yīng)用中,,很重要的一個環(huán)節(jié)是它的RowSourceType及RowSource這兩個屬性的組合,。比如在看實(shí)例學(xué)VFP:對表中記錄進(jìn)行定位與查找操作這個例子中是把組合框的RowSourceType屬性值設(shè)為“1-值”,,而在看實(shí)例學(xué)VFP:去除查詢結(jié)果中的重復(fù)記錄這個例子中是把組合框的RowSourceType屬性值設(shè)為“2-別名”,。

這個控件有一個style屬性,如果將這個屬性設(shè)為“0-下拉組合框”,,可以在使用下拉列表框的同時(shí),,使用組合在其中的文本框,這也是系統(tǒng)默認(rèn)的屬性值,;如果將這個屬性設(shè)為“2-下拉列表框”,,則組合框只具有列表框的功能;如果需要在表單啟動時(shí)組合框自動有一個選定值,,可以在表單的init事件中將這個選定值賦給組合框的displayvalue屬性,。

這個控件還有一個值得一提的屬性:Text,通過這個屬性我們可以使用輸入到組合框中的文本框中的值,,也可以把這個值賦給一個變量,。這個屬性很重要,比如有時(shí)需要把輸入到文本框中的值同時(shí)添加到組合框的列表項(xiàng)中,,就需要使用這個屬性,。

關(guān)于向組合框添加列表項(xiàng):MSDN幫助給出了一個很好的建議,最好在添加前檢查一下組合框的下拉列表中有無重復(fù)值,,并給出了一段發(fā)生在組合框的Valid事件中的示例代碼,。在本文隨后給出的例子,在添加列表項(xiàng)這部分的代碼中參考了MSDN的這部分代碼,,不過本例是將這個操作放到了命令按鈕的click事件中,。

本文來設(shè)計(jì)一個組合框既可以選值又可以輸入值的例子,在看實(shí)例學(xué)VFP:超級鏈接控件的使用一例中我們只能訪問預(yù)設(shè)在列表框中的幾個網(wǎng)站,本文用組合框控件來改進(jìn)一下這個例子,,使之不僅能訪問預(yù)設(shè)的網(wǎng)址,,還可以通過在組合框的文本框中輸入值來訪問一個網(wǎng)址,并且在訪問后這個網(wǎng)址會自動添加到組合框的下拉列表中,,運(yùn)行界面如下圖:

 

制作步驟如下:

一,、新建表單,將其caption屬性設(shè)置為“編程入門網(wǎng)-組合框控件”,,保存為“表單1.scx”,。

二、向表單上添加一個label控件,,將其caption屬性值設(shè)置為“請輸入或選擇一個網(wǎng)址”,。

三、向表單上添加一個命令按鈕控件command1,,將其caption屬性值設(shè)置為“Go!”,。

四、向表單上添加一個組合框控件combo1,,將其RowSourceType屬性值設(shè)為“1-值”,,style屬性值使用默認(rèn)的為“0-下拉組合框”。

五,、按上圖適當(dāng)調(diào)整各控件及表單的大小和位置,。

六、添加事件代碼:

1,、表單的init事件代碼:

this.AddObject("Hyperlink1","HyperLink") &&添加超級鏈接控件
this.combo1.additem("Baidu")
this.combo1.additem("Google")
this.combo1.additem("Sogou")
this.combo1.additem("Yahoo")
this.combo1.additem("MSDN")
this.combo1.additem("CSDN")
this.combo1.additem("Yesky")
this.combo1.additem("小小鳥")

2,、命令按鈕的click事件代碼:

str1=alltrim(thisform.combo1.displayvalue)
do case str1
   case str1="Baidu"  &&訪問百度
        thisform.Hyperlink1.NavigateTo("   case str1="Google" &&訪問谷歌
        thisform.Hyperlink1.NavigateTo("
   case str1="Sogou" &&訪問搜狗
        thisform.Hyperlink1.NavigateTo("
   case str1="Yahoo" &&訪問雅虎
        thisform.Hyperlink1.NavigateTo("one.cn.yahoo.com")
   case str1="MSDN"  &&訪問微軟MSDN主頁
        thisform.Hyperlink1.NavigateTo("msdn.microsoft.com")
   case str1="CSDN"  &&訪問CSDN網(wǎng)站
        thisform.Hyperlink1.NavigateTo("
   case str1="Yesky"  &&訪問天極
        thisform.Hyperlink1.NavigateTo("
   case str1="小小鳥"  &&訪問編程入門網(wǎng)
        thisform.Hyperlink1.NavigateTo("
www.")
   otherwise
       if empty(alltrim(thisform.combo1.text))
          messagebox("請輸入或選擇一個網(wǎng)址!")
          thisform.combo1.setfocus
          return
       endif
       thisform.Hyperlink1.NavigateTo(thisform.combo1.text)
       lItemExists=.f.  &&假設(shè)列表中沒有該值,。  
        FOR i=1 to THISform.combo1.ListCount  
           IF THISform.combo1.List(i)=THISform.combo1.Text  
              lItemExists=.T.
              EXIT  
           ENDIF  
        ENDFOR  
        IF !lItemExists
           THISform.combo1.AddItem(THISform.combo1.Text)  
        ENDIF
endcase七,、運(yùn)行“表單1.scx”。


本文來自編程入門網(wǎng):http://www./Programming/vfp/200904/11319.htm

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購買等信息,,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請點(diǎn)擊一鍵舉報(bào),。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多