上一篇主題 :: 下一篇主題 |
發表人 |
內容 |
ckp6250
註冊時間: 2004-07-30 文章: 1645
第 1 樓
|
發表於: 星期六 十月 02, 2004 10:31 pm 文章主題: 妍 Browse 指令時,如何自動執行 AutoFit 呢? |
|
|
請教諸位先進:
當我們下 Browse 時,如何讓它自動 AutoFit 呢? |
|
回頂端 |
|
 |
goto-dream
註冊時間: 2004-05-11 文章: 909
第 2 樓
|
|
回頂端 |
|
 |
ckp6250
註冊時間: 2004-07-30 文章: 1645
第 3 樓
|
發表於: 星期二 十月 05, 2004 12:21 pm 文章主題: 感謝指教,但小弟測試的結果,Browse啟動時,並沒有自筋動Autofit.. |
|
|
感謝指教,但小弟測試的結果,Browse啟動時,並沒有自筋動Autofit..
要手動去按左上角的小方格二下,,才會Autofit
有沒有什麼地方要特別設定呢? |
|
回頂端 |
|
 |
朱育興
註冊時間: 2003-08-25 文章: 661 來自: 台中市大里區
第 4 樓
|
|
回頂端 |
|
 |
goto-dream
註冊時間: 2004-05-11 文章: 909
第 5 樓
|
發表於: 星期二 十月 05, 2004 9:09 pm 文章主題: |
|
|
代碼: | BROWSE [FIELDS FieldList] [FONT cFontName [, nFontSize]]
[STYLE cFontStyle] [FOR lExpression1 [REST]] [FORMAT]
[FREEZE FieldName] [KEY eExpression1 [, eExpression2]] [LAST | NOINIT]
[LOCK nNumberOfFields] [LPARTITION] [NAME ObjectName] [NOAPPEND]
[NOCAPTIONS] [NODELETE] [NOEDIT | NOMODIFY] [NOLGRID] [NORGRID]
[NOLINK] [NOMENU] [NOOPTIMIZE] [NOREFRESH] [NORMAL] [NOWAIT]
[PARTITION nColumnNumber [LEDIT] [REDIT]]
[PREFERENCE PreferenceName] [SAVE] [TIMEOUT nSeconds]
[TITLE cTitleText] [VALID [:F] lExpression2 [ERROR cMessageText]]
[WHEN lExpression3] [WIDTH nFieldWidth] [WINDOW WindowName1]
[IN [WINDOW] WindowName2 | IN SCREEN] [Color Scheme nSchemeNumber]
参数
字段列表可以指定为字段或计算结果字段的任意组合。字段列表的语法是:
FieldName1
[:R]
[:nColumnWidth]
[:V = lExpression1 [:F] [:E = cMessageText]]
[:P = cFormatCodes]
[:B = eLowerBound, eUpperBound [:F]]
[:H = cHeadingText]
[:W = lExpression2]
[, FieldName2 [:R]...]
:nColumnWidth
指定列中字段显示的大小,:nColumnWidth 值不影响表中字段的大小,只影响字段在浏览窗口中显示的方式。
:V = lExpression1 [:F] [:E = cMessageText]
检验选项 (:V) 在浏览窗口中执行字段级数据有效性检查。若从一个字段移去光标时,lExpression1 值为“真” (.T.),则认为输入到该字段的数据正确,光标移向下一字段。
若 lExpression1 值为“假” (.F.),则认为所输入数据不正确,光标停留在当前字段并显示一条错误信息。若 lExpression1 值为 0,则认为所输入数据不正确,光标仍停留在当前字段但不显示错误信息。
对于备注字段不执行此检验选项。
默认情况下,lExpression1 只在修改字段时求值。欲强制执行检验,需包括 :F 选项。用户可包含下面所述的 :E 选项来显示自己定义的错误信息。
:F
决定当从一个字段移去光标或激活另一个窗口时,是否对检验选项中的表达式求值。若不包括 :F,则 lExpression1 仅在修改字段时求值。若包括 :F,则即使没有修改字段也对 lExpression1 求值。
:E = cMessageText
如果有效性检测表达式 :V = lExpression1 值为“真”,则允许光标移动。如果该表达式值为“假”,光标停留在当前字段,Visual FoxPro 产生一个错误信息。
如果包含错误选项 (:E),cMessageText 代替系统错误信息出现。CMessageText 仅在 SETNOTIFY 为 ON 时出现。若 SET BELL 为 ON,则响铃。
如果 :V = lExpression1 值为 0,则不出现错误信息,光标停留于当前有效字段。这使得用户可以在有效性检测例程中显示自己定义的错误信息。
下例打开 products 表并显示 product_id 和 prod_name 字段。Product_id 字段是一个可接收 5 个数字的数值型字段。在该例中,假定大于 100 的 product_id 是无效的。
:V 指定有效性准则。 不论数据是否更改,:F 都强制执行有效性检查。:E 使用用户自定义错误信息来代替 Visual FoxPro 系统错误信息。在 Visual FoxPro、ForPro for Windows和 FoxPro for Macintosh 中,错误信息显示于 Visual FoxPro 主窗口底部的状态栏中。
按下 ESC 键可关闭浏览窗口。
CLOSE DATABASES
OPEN DATABASE (HOME(2) + 'data\testdata')
USE products && 打开 products 表
IF _WINDOWS OR _MAC
SET状态栏R ON
ENDIF
USE products
BROWSE FIELDS in_stock :V = in_stock < 100 ;
:F ;
:E = '库存数必须小于 100' |
_________________ 福隆昌淨水有限公司--淨水器的專家,淨水器,飲水機,濾心!!
想了解更多,您可上幸福雞湯組.找尋!!丁澐瑄.老師.
愛作夢 |
|
回頂端 |
|
 |
朱育興
註冊時間: 2003-08-25 文章: 661 來自: 台中市大里區
第 6 樓
|
發表於: 星期二 十月 05, 2004 10:44 pm 文章主題: |
|
|
喔!我猜錯了,原來 BROWSE 指的是這個啊。
那在下 BROWSE 命令時加上 NOINIT 關鍵字進去
BROWSE ... NOINIT ...
我試過,其效果跟你所說「手動去按左上角的小方格二下」的一樣。 _________________ 希望有更多人來參與
VFP wiki - 需要大家一起完成的VFP電子書與FAQ |
|
回頂端 |
|
 |
ckp6250
註冊時間: 2004-07-30 文章: 1645
第 7 樓
|
發表於: 星期三 十月 06, 2004 12:37 pm 文章主題: 感謝朱兄指教,但無效耶... |
|
|
感謝朱兄指教,但無效耶...
若第一次執行 Browse , 您故意把某欄拉得很i,,然後闗檔,離開VFP
第二次進來VFP , 開孛禤う瞴A下達Browse noinit , 但它會記住上回拉開的那個欄寬,並不能自動Autofit |
|
回頂端 |
|
 |
朱育興
註冊時間: 2003-08-25 文章: 661 來自: 台中市大里區
第 8 樓
|
發表於: 星期三 十月 06, 2004 1:20 pm 文章主題: |
|
|
確實無效,看了說明檔,你可能要用 BROWSE 命令中 PREFERENCE 引數,也許可以達到 Autofit 的功能
註:我覺得有點囉嗦,但好像只能用這個方法來解決,所以呢,你真的要那麼計較 BROWSE 一定要 Autofit。我的觀點是覺得不值得與沒必要。 _________________ 希望有更多人來參與
VFP wiki - 需要大家一起完成的VFP電子書與FAQ |
|
回頂端 |
|
 |
ckp6250
註冊時間: 2004-07-30 文章: 1645
第 9 樓
|
發表於: 星期四 十月 07, 2004 11:13 am 文章主題: 朱兄說得有理 |
|
|
其實,正如您所說,Browse 有沒有自動 AutoFit , 不見得很有必要,
只是,有些檔案,欄位實在太多,若能自動 Autofit , 去掉一些太長欄位的空白,多擠出幾欄在螢幕上,效果會好些,而且,也會比教使用者去按那左上角二下,來得省事一些,
或者,有沒有辦去去模擬那個動作呢,不知它的按鈕代碼是什麼? |
|
回頂端 |
|
 |
|