Visual FoxPro6.X中文版程式設計-問題篇

問題4如何在VisualFoxPro中處理16進制的數值? 問題3我要如何將我的dBASE程式轉換至Visua1FoxPro呢? 問題4我們該如何設定VisualFoxPr0的系統環境?

內容介紹

Visual FoxPro 6.0中文版是Visual FoxPro資料庫軟體的最新版本。本書針對廣大Visual FoxPro 6.X中文版用戶和應用程式設計者在internet/intranet中的套用、控制項導向程式設計和表單設計、SQL語言使用、系統設定等方面有可能遇到的問題,分門別類地用實例進行解說,並附有解決方案、注意事項和示範程式,相信對讀者會有很大的幫助。 本書由台灣微軟公司專

作品目錄

目 錄
第一章 lnternet/lntranet強力技巧篇
問題1什麼是ActiveDocument,它的主要用途又是什麼呢?
問題2ActiveDocument是以何種形式的檔案存在?
問題3如何建立ActiveDocument?
問題4ActiVeDocument的選單欄如何顯示於瀏覽器中?
問題5ActiveDocument中的表單由於擁有標題與框線,因此在外觀上似
乎無法像一般的HTML網頁與瀏覽器融為一體的感覺 有什麼方法
解決呢?
問題6當我在一個瀏覽器中執行ActiveDocument時,如果直接關閉瀏
覽器,為什麼還會有一個VisualFoxPr0運行時期視窗處於運行
狀態中呢?
問題7我們能否在一般的HTML網頁中通過某個超鏈結來運行Active
Document?
問題8VisualFoxPr06.0所新增的“超鏈結對象”(Hyper1ink0bject)有
哪些用途?它與ActiveDocument有些什麼關聯呢?
問題9如何在程式中檢驗出ActiveDocument目前運行於哪一個容器中?
問題10如何將參數傳遞給ActiveDocument?
問題11網頁發布嚮導的用途是什麼?如何使用它呢?
第二章 控制項導向程式設計與表單設計器要點精選篇
問題1表單能夠擁有滾動軸嗎?如果可以的話,該如何設定?
問題2我們能夠將表單的標題隱藏起來嗎?此外 我們能否使表單不具備
框線呢?如果可以的話,該如何設定?
問題3我們如何能像圖表2-4所示,在表格控制項(Grid)的某一列(Column)
中顯示出多個欄位的內容,並自行決定其排列方式?
問題4我使用表單設計器建立用戶界面時,經常需要連續將相同的控制項加
至表單上,我是否每次都要再按一下“表單控制項”欄中相對應的按
鈕,然後才能再到表單上按一下而建立此控制項。是否有較方便的操
作方式呢?
問題5我如何能夠在程式執行期間 動態將特定信息文字顯示在狀態欄
中?
問題6為什麼我在某控制項的Valid事件程式中去調用其他控制項的SetFocus
方法程式時會出現錯誤呢?該如何解決呢?
問題7請問Create0bject() 函式與New0bject() 函式的差別在哪裡?該
使用哪一個才恰當呢?
問題8請問Add0bject方法程式與New0bject方法程式的差別在哪裡?
該使用哪一個才恰當呢?
問題9VisualFoxPr0支持多少種基礎類(BaseClass)?哪些是複合式
非複合式、可見與不可見?
問題10您能否告訴我複合式對象及其所內含的對象的各項重要事件被引發
執行的次序?
問題11我該如何在表單設計器取用儲存在類定義函式館(.VCX) 中的用戶
自定義類呢?
問題12在表單設計器(FormDesigner) 中,我們可利用滑鼠選取某一個對
象以便設定其屬性或編寫其事件程式或方法程式,但是當我們要在
各個相鄰的對象上來回移動時,使用滑鼠來選取反而很不方便 有
什麼更快的方法嗎?
問題13有什麼方法能夠在屬性視窗中快速移往某一個屬性 事件或方法程
序呢?
問題14我該如何於在屬性視窗中將某一個屬性重設回其默認值?
問題15我已替表單中某一個控制項的T00lTipText屬性編寫了工具提示,
為什麼當表單執行後 我將滑鼠指標移至此控制項上,卻不會顯示出
工具提示呢?
問題16我該如何替表單建立一數組屬性呢?
問題17假設我根據某一個類建立了一個子類,並在此子類的Click事件
程式中編寫程式碼。但是我希望當此子類的Click事件被觸發時,
除了執行此子類本身的Click事件程式外,其父類別的Click事
件程式也會被執行。欲達此目的,該怎么做呢?
問題18假設我在某一個表單中建立了一個按鈕,則我該如何在此按鈕的事
件程式中去存取表單的屬性或調用表單的方法程式呢?
問題19為什麼當我以DoFORM命令執行表單而建立一表單後,命令視窗
還會顯示在畫面上,而且如果將包含此一DOF0RM命令的程式編
譯成可獨立執行檔案.EXE後 此.EXE檔案一執行後便會跳離 問
題究竟出在哪裡呢?
問題20要在對象的外部去存取一個對象,必須通過其對象變數,請問當我
們以DOFORM從一表單(.SCX) 建立起一表單集或表單後 何者是
此表單集或表單的對象變數?
問題21我使用DOFORM命令建立了一個表單,但是為什麼我使用RELEASE命
令去釋放其對象變數後 此表單仍然存在而並未隨之釋放 這是為
什麼呢?
問題22在使用DOFORM命令執行表單時,該如何將參數傳遞給表單呢?
此外,我們又該如何去接收由表單所傳回的數據值呢?
問題23我能否替標籤控制項(Labe1)定義快捷鍵?就算可以,替標籤控制項定
義快捷鍵又有什麼意義呢?
問題24在表單設計器中,如何能夠不通過表單生成器(FormBuilder) 一
次就將數據表格中所有的欄位加至表單中而成為各個獨立的控制項?
問題25如何隱藏用戶在文本框中所輸入的密碼?
問題26我希望在文本框與數值微調器中的數值能以三位一撇的方式顯示
並且自動加上貨幣符號,該怎么做呢?
問題27數值微調器(Spinner) 能夠用來微調日期值嗎?如果不行 該怎么
辦呢?
問題28數值微調器(Spinner) 的Increment屬性用以決定當用戶按一下
其向上或向下按鈕時的遞增或遞減值,但是,如果Increment屬
性的設定值並非是一個整數而包含小數時 為什麼遞增值與遞減值
會不正確呢?
問題29我該如何建立一個跳離按鈕――即只要按下 Esc 鍵就會引發此
按鈕的Click事件?
問題30我該如何建立一個默認按鈕――即只要按下 Enter 鍵就會引發此
按鈕的Click事件?
問題31我們能否建立多行文字的按鈕,如果可以的話,該怎么做呢?
問題32我希望自行指定一個圖示檔案(.ICO)、靜態指標檔案(.CUR) 或動
態指標檔案(.ANI) 來作為滑鼠指針移至某一個控制項上方時的滑鼠
指針,該怎么做呢?
問題33如何替表單建立功能鍵?
問題34有部分系統是採用編輯時期鎖定,但為了避免用戶占用某些數據表
格卻遲遲不使用,而造成網路上其他用戶無法存取數據,我希望在
用戶經過一段時間未進行任何操作後即自動釋放表單 該怎么做
呢?
問題35我的系統會同時在畫面上打開好幾個表單,基於某種需求 我必須
檢測上一個活動表單是哪一個,該怎么做呢?
問題36我希望在一開始運行後,列表框(ListBox) 中的第一個選項能夠被
選定,運行後發現,只需將列表框的Value屬性設定成1即可。
但是如果這樣做的話,Value屬性所持有的值將是被選定的選項的
位置順序編號,而不是被選定的選項的文本內容。我如何才能夠既
利用選項的位置順序編號來決定一開始哪一個選項要被選定(因為
這樣做較簡單)而且又讓Value屬性所持有的值為被選定的選項
的文本內容?
問題37我建立了一個RowSourceType屬性為0且列數為3的列表框 但
是為什麼我無法利用AddItem方法程式將各個選項依序加入列表
框的各行的每一個列中呢?
問題38當列表框的RowS0urceType屬性為0或1時,我們必須利用AddItem
或AddListItem方法程式來將選項加至列表框中。然而是不是真
的每調用一次AddItem或AddListItem方法程式 就只能加入一
個選項,有沒有更簡潔的寫法呢?
問題39據了解,我們只需將列表框的MultiSelect屬性設定成邏輯真值.T.
即可同時選定多個選項,然而問題在於,我們如何在程式中判斷出
用戶已多選了哪幾個選項 以及如何取得這些被選定的選項的文本
內容?
問題40我希望在運行時期改變列表框的選項來源 我的作法是先改變
RowSourceType屬性,再改變R0wSource屬性,結果卻會出錯;
後來我就先改變RowSource屬性,再改變R0wS0urceType屬性,
但是還是出錯。到底該怎么做呢?請指點迷津。
問題41組合框(C0mboB0x) 的好處就是既能夠讓用戶選擇某一個選項,也
可以自行輸入其他數據值 然而我卻發現一個奇怪的狀況,就是如
果用戶所輸入的值並非是某一個選項時,組合框的value屬性將
是空字串,而且此輸入值也不會寫回ControlS0urce屬性所指定
的欄位中。這個問題該如何克服呢?
問題42如圖2-22所示,VisualFoxPro的數據表格設計工具(Table
Designer)允許我們替資料庫數據表格的數據欄位定義注釋文本,
我的期望是,當利用一個文本框控制項(TextBox)或複選框(CheckBox)
編輯與顯示某一個數據欄位時,此數據表格的注釋文本會自動顯示
在狀態欄中。要達此目的,該怎么做呢?
問題43如何讓複選框(CheckBox) 的標題文本(即Caption屬性)隨著邏
輯型態的來源欄位的內容自動隨之改變?
問題44一般而言,如果欄位所儲存的數據是兩條件之一的話(例如:男與
女、已婚與未婚、開啟與關閉……),我們通常會將此欄位設定成
邏輯型,並以複選框來顯示與編輯此欄位的內容。但是如果我想直
接以字元型欄位來儲存兩條件的文本的話(以性別欄位而言,欄位
中儲存的即是文字“男”或“女”)應採用何種控制項來顯示與編
輯此欄位才恰當呢?
問題45我想在程式中去檢測一個表單是如何被釋放的 要達此目的 該怎
么做呢?
問題46當用戶按一下表單右上角的關閉按鈕、從控制選單中選取關閉指令
或是連按兩下控制選單方框時,我們能否有辦法要求用戶再次確
認,而如果用戶此時回答不要關閉表單 我們如何不讓表單被釋放
呢?
問題47NODEFAULT命令的用途為何?
問題48如何檢查對象是否存在?
問題491.如何將屬性恢復成其默認值?
2.如何在程式中檢查某一個屬性的屬性值是否已更改――即不再
是默認值?
3.如何在程式中檢查某一個屬性是否為唯讀的(Read-Only)?
問題50如何設定VisualFoxPr0桌面視窗的各項屬性 調用其方法程式
或調用其事件程式?
問題51我已在“選項”對話框的“表單”標籤頁面中,設定某一個表單的
用戶自定義類作為樣板類。而我如何能夠在啟動表單設計工具時,
不使用所指定的樣板類,而採用標準的Form基類。
問題52為什麼我在運行時期重設Cursor對象的ReadOnly屬性時,會出現
“在重新載入數據環境之後,屬性設定才生效。”的錯誤信息呢?
問題53我是否能夠讓工具列(ToolBar)隨著它停靠的位置而變換其按鈕上
的圖片呢?
問題54我希望在運行時期,用戶不能使用滑鼠去調整各個C01umn的位置
順序。要達此目的,該怎么做呢?
問題55我希望在運行時期,用戶不能使用滑鼠去調整各個Column的寬度
欲達此目的,該怎么做呢?
問題56我希望在運行時期,用戶不能使用滑鼠調整表格(Grid)的列高度與
標題欄的高度,並且也不允許他們將表格控制項分割成左右兩窗格
欲達此目的,該怎么做呢?
問題57我希望表格控制項中各個Column的標題文本會自動顯示在中央位置
上,該怎么做呢?而怎么設定才最有效率呢?
問題58我希望讓用戶自行決定表格控制項中的數據記錄要依哪一個Column
的來源欄位排序,並且期望作法是只要用戶使用滑鼠按一下此
Column的標題 便會自動依此Column的來源欄位排序。該怎么
做呢?
問題59ControlSource屬性除了可以是欄位以外 可以是變數 數組 屬
性或數組屬性嗎?
問題60我該如何替表格控制項建立一個運算列?
問題61我們如何在表格控制項的列(Column)中使用文本輸入框(TextBox)以
外的控制項來顯示與編輯來源欄位的數據呢?反之 我們要如何將額
外加入到列中的控制項移除呢?
問題62從前一個問題的解答可以得知,我們能夠將所需的控制項加至表格控
件的列中,以便採用文本輸入框以外的控制項來顯示與編輯來源欄位
的數據。然而令人好奇的是 我們能夠將表格控制項再加至表格控制項
的列中嗎?
問題63我該如何替分頁框(PafeFrame)中的各個分頁建立快捷鍵 以便只
要按下快捷鍵即可快速切換至某一分頁(Page)上?
問題64OLE對象本身並不具有ToolTipText屬性,因此我想請問您 是
否有任何方法能夠讓OLE對象亦具備工具秘訣文本?
問題65通常我們是將工具列(ToolBar)建立在VisualFoxPro的桌面上,
當然,工具列也僅能停靠在VisualFoxPro的桌面視窗的四個邊
界上。但是VisualFoxPro自5.0版開始,似乎能夠將工具列建
立在表單上而使其專屬於某一個表單,當然,工具列也就能夠停靠
在表單的四個邊界上,請問這是怎么做到的?
問題66我所開發的應用程式的主畫面是採用一個頂層表單,並且將套用程
序編譯連線成.EXE檔案,故希望運行此套用系統時VisualFoxPro
的桌面視窗不要出現。有什麼方法能夠隱藏VisualFoxPro的桌
面視窗使其不要出現呢?
問題67請問什麼是基類(FoundationClass)?
第三章 資料庫技巧精挑細選篇
問題1我不小心將數據表格從資料庫中移出 而導致其數據字典信息遺
失,請問有什麼方法補救?
問題2我該如何將NULL值(.NULL.)鍵入欄位數據欄中?
問題3為什麼資料庫設計器(DatabaseDesigner) 中某些數據表格間會有
線條相連線?
問題4請問資料庫設計器(DatabaseDesigner) 與數據環境設計器(Data
EnvironmentDesigner)有什麼差異?
問題5VisualFoxPro的資料庫使得我們能夠替數據附加各項檢驗證,不
過您是否能告訴我這些檢驗被引發的次序,以及它們何時被引發?
問題6使用RECALL命令去恢復己被標識刪除的數據記錄是否會引發任何
觸髮式程式?
問題7ZAP命令是否會引發刪除作業的觸髮式程式――即Delete
Trigger?
問題8如何判斷一個已打開的數據表格是一個資料庫數據表格或是一個獨
立存在的數據表格?
問題9通過VisualFoxPro的數據視圖設計器(ViewDesigner) 我們能
夠以簡易的操作界面來建立數據視圖,但是如果我所要建立的數據
視圖包含子查詢(Subquery)、查詢合併(UNION)等較複雜的查詢作
業時,數據視圖設計器卻無法勝任,遇到此種狀況時該怎么辦呢?
問題10請問DROPTABLE命令與REMOVETABLE命令兩者有何差異?
第四章 一般程式設計疑難雜症解析篇
問題1VisualFoxPr06.0有哪些格式的圖形?我們可以使用GIF與JPEG
格式的圖形?
問題2如何解決公元2000年以後的日期問題?
問題3如何判斷某一年是否為閏年?
問題4如何在VisualFoxPro中處理16進制的數值?
問題5如何取得默認磁碟目錄?
問題6HOME()與SYS(2004)能夠傳回VisualFoxPro的啟動磁碟目錄
――亦即VFP.EXE所在的磁碟目錄。因此我推測當HOME()與
SYS(2004)在執行檔.EXE中被調用時,應傳回.EXE檔案所在
的磁碟目錄,然結果卻不是如此。問題究竟出在哪裡呢?
問題7我能夠直接在VisualFoxPro中建立目錄 刪除目錄與切換目錄
嗎?
問題8Integer型會比Numeric型來得快嗎?
問題9由於我所設定的主索引並非SEEK命令據以搜尋的索引,因此我每
次搜尋前都必須先使用ORDER() 函式取得目前的主索引的名稱
並將其存於變數中 而在搜尋完畢後再將它重設回來 請問真的必
須這么麻煩嗎?
問題10SEEK命令與SEEK() 函式都是用來作為搜尋數據記錄之用,我的
疑問是,兩者是否有優劣之分呢?又請問 VisualFoxPro6.0所
新增的IndexSeek() 函式與前兩者有何差別 它是否又更優異呢?
問題11據了解,VisualFoxPr0總共提供了私有(Private)、局部(Local)與
公共(Public)等三種記憶體變數與數組,請問這三者的差異何在?
問題12在這裡我有兩個問題想要請教您,參數傳遞可分為傳值(ByVa1ue)
與傳址(ByReference) 兩種方式,請問兩者的差異何在?又我們
該如何以傳值或傳址的方式來傳遞參數?
問題13我想要傳遞一個數組,該怎么做呢?
問題14我是否能夠用傳址的方式來傳遞局部(Local) 記憶體變數或數組?
問題15我究竟該使用PARAMETERS或LPARAMETERS命令中的哪一個來接收
傳遞進來的參數呢?兩者的差異何在?
問題16我如何在被調用程式中檢測出總共傳遞進來多少個參數?
問題17WAITWINDOW命令可以在畫面的右上角顯示一信息視窗 我能否指
定此信息視窗顯示的位置呢?
問題18我希望在WAITWINDOW命令所產生的信息視窗中顯示多行文字
該怎么做呢?
問題19MessageBox() 函式使我們能夠輕易製作一個包含信息、圖示及某
些指令按鈕的對話框,以便完成與用戶間的互動作業。MessageBox()
函式很聰明,因為它會自動將信息文字做換行的處理,而且對話框
也會根據信息文字的多少自動加大其高度與寬度 然而我想請問的
是,是否能自行決定信息文字該在何處換行?
問題20如何將系統選單隱藏起來?
問題21如何將標準工具列隱藏起來?
問題22如何關閉系統信息?
問題23如何清除狀態欄中的信息?
問題24如何巨集替換一個控制項的屬性?
問題25我們該如何以程式控制的方式將OLE控制項加至數據表格的通用字
段中?
問題26我們該如何以程式控制的方式將數據表格的通用欄位中的OLE控
件去除?
問題27我該如何測知某一個命令總共處理了多少條數據記錄?
問題28我嘗試使用REPORTFORMTOFILE命令將報表輸出至一個文
本檔案,可是結果為什麼是一堆亂碼呢?請問該如何解決呢?
問題29在REPORTFORM命令中加入關鍵字PREVIEW即可預覽報表,不過
我希望在一個用戶自定義視窗中預覽報表 而不要在系統默認的窗
口中預覽報表,請問能做得到嗎?
問題30在使用REPORTFORM命令列印報表時,是否可以僅列印某特定范
圍頁碼的報表 比方說,只印第5~10頁 如果可以 該怎么做
呢?
問題31我希望允許用戶自行調整印表機的相關設定(比方說:紙張大小、
列印方向……),但是我不曉得該如何於程式中打開“列印設定”
對話框,您能指點我嗎?
問題32如何縮減.EXE檔案的大小?
問題33如何在VisualFoxPr0中使用動態連結函式館(.DLL)中的函式?
問題34於VisualFoxPro中使用相關命令刪除檔案時,是否能先將這些
檔案移至資源回收筒 而不要立即真正從磁碟上刪除?
第五章 結構化查詢語言(SQL) 強力攻占篇
問題1VisualFoxPro向來以其最佳化技術(RushmoreTechno1ogy)聞名江
湖,但是我如何測知某道查詢命令是否已被最佳化技術最佳化而達到
最佳執行效率呢?
問題2臨時數據表格(即Cursor)的名稱能夠以數目字開頭嗎?
問題3我該如何將子數據表格中那些與父數據表格不相關聯的數據記錄刪
除――即將違反數據參考完整性的數據記錄刪除?
問題4什麼叫做INNEJOIN,VisualFoxPro6.0支持INNERJOIN嗎?
問題5什麼叫做LEFTOUTERJOIN,VisualFoxPro6.0支持LEFTOUTERJOIN
嗎?
問題6什麼叫做RIGHTOUTERJOIN VisualFoxPr06.0支持RIGHTOUTER
JOIN嗎?
問題7什麼叫做FULLOUTERJOIN,VisualFoxPr06.0支持FULLOUTERJOIN
嗎?
問題8我想要查詢出數據表格employeedbf中 目前工資最高的前10名
的員工,該怎么做呢?
問題9我想要查詢出數據表格employeedbf中 目前工資倒數前10名
的員工,該怎么做呢?
問題10我想要查詢出數據表格employeedbf中 部門的平均工資最高的
前3個部門,該怎么做呢?
問題11我想要查詢出數據表格employee.dbf中 部門的平均工資最低的
倒數算起的3個部門,該怎么做呢?
問題12我想要查詢出數據表格employeedbf中 目前工資最高的前10%
的員工,該怎么做呢?
問題13我想要查詢出數據表格employeedbf中 目前工資倒數算起的
10%的員工 該怎么做呢?
第六章 選單套用秘訣篇
問題1如何在套用系統執行期間動態啟用(Enable) 或停用(Disable) 菜
單選項?
問題2如何於套用系統執行期間動態替選單選項標上或刪除檢查記號?
問題3我們如何能夠在套用系統執行過程中,動態刪除主選單選項 動態
刪除下拉式選單以及動態刪除子選單選項?
問題4如何替表單或其中的控制項建立快捷選單(ShortcutMenu)?
問題5我們通常會將選單建立在系統選單欄上,不過VisualFoxPr06.0似
乎能將選單建立在表單上(如圖6-7所示)而使得表單擁有其自
身的選單欄 請問這是怎么做到的呢?
第七章 網路程式設計問題精選篇
問題1如何在Visua1FoxPro中判斷目前登錄網路的使用者是誰?
問題2在網路環境中,連線於工作站與伺服器的印表機常常不只一部,我
希望讓使用者在列印前決定要使用哪一部印表機進行列印 這樣的
程式要怎么寫呢?
問題3如何以隨機數產生一個唯一的名稱來作為臨時檔案的名稱?
第八章 OLE與ActiveX控制項方面的問題
問題1通過查詢設計器(QueryDesigner),我們能夠將查詢結果利用
Micros0ftGr即h繪製成統計圖表,並將其儲存在某數據表格的通
用欄位中問題是當用以繪製統計圖表的來源數據有所變動時
第十章 一般性問題
問題1VisualF0xPro6.0中文版的系統需要什麼樣的設備?
問題2我過去在FoxPro2.X中所建立的檔案該如何轉換才能使用在
VisualFoxPr0呢?
問題3我要如何將我的dBASE程式轉換至Visua1FoxPro呢?
問題4利用VisualFoxPro所開發的應用程式可執行在FoxProfor
Macintosh、FoxProforMS-DOS或FoxProforUNIX之中嗎?
問題5我們要怎么樣才能找到VisualFoxPro所提供的工具列的工具列
清單?
問題6為什麼在某些狀況下當我按一下滑鼠右鍵時會出一個快捷選單?
問題7嚮導(Wizards) 與生成器(Builders) 間的差異何在?
問題8我究竟該選用VisualFoxProVisualBasic或Access中的哪一
個呢?
問題9您能夠告訴我VisualFoxPto的系統規格嗎?
第十一章 系統設定方面的問題
問題1據了解,除了使用狀態控制命令以外 我們亦可使用Windows注
冊表與配置檔案Config.fpw來設定VisualFoxPro6.0的系統環
境。我的問題是,改變Windows註冊表或配置檔案Config.fpw中
的設定後 一定要重新啟動VisualFoxPro所作的設定才會生效
嗎?
問題2如何在VisualFoxPr0中,判斷電腦是使用哪一種微處理器?
問題3在F0xPr02.X時代,我們經常使用系統設定項目MEMLIMIT來設
定FoxPro所要占用的記憶體數以便使其能擁有充分的系統資源。請
問在VisualFoxPro中 仍舊是沿用系統設定項目MEMLIMIT嗎?
問題4我們該如何設定VisualFoxPr0的系統環境?
問題5從上一個問題的解答得知,利用“選項”對話框來設定VisualFoxPro
的環境確實非常簡易,有了“選項”對話框我是否就能捨棄配置文
件CONFIG.FPW不用了呢?

相關詞條

熱門詞條

聯絡我們