2011-11-11 44 views
4

我有一個報告,其中包含詳細信息部分中的一組控件。 我正在處理作爲樣本給予我的單詞文檔,並且幾乎完美地在訪問中重新創建了它。我現在需要的是處理溢出文本框的方法。我有「可以增長」啓用,但這裏是真正的問題:訪問報告「可能增長」屬性需要影響相鄰控件

我有一個假表正在進行。多個文本框排列方式不適用於子窗體。某些細胞有紅色,綠色或黃色背景,而其他細胞則只是純白色。當其中一個文本字段溢出並且「增長」時,同一行中的其他文本框保持與之前相同的大小,並且看起來非常非常奇怪(703緹vs 300)。我真的很喜歡它的工作方式,就好像它是word/excel中的表格一樣,整行將會一次成長(全部= 703緹),但是看到它不是字面上的「行」,我只是想一種將這些文本框的高度相互關聯的方法。

是這樣的可能嗎?如果我需要澄清任何事情只是讓我知道,我希望我已經提供了充足的信息。

+0

你在哪裏設置了'CanGrow'屬性,詳細信息部分或者只是單個控件?看看爲整個部分設置屬性是否有幫助。 – Fink

+0

它設置在整個細節部分以及其中的每個控件。我知道這個問題是因爲每個文本框都是獨立的,我需要一種方式讓他們一起成長,就好像他們是一張真正的桌子一樣...... – misterManager

回答

2

好纔好。所以我有一個假桌子,我需要它在每個文本框周圍都有表格邊框,並且當一個文本框比該行中的其他文字框更高時,邊框看起來完全錯誤。所以,我們所要做的就是在運行時從字面上繪製報表,這可以在任何視圖中完成,包括打印預覽。此代碼必須放置在打印事件

'step one. find out which box in the row has the greatest height value. 
'You can come across this information however you want. 
'It will likely depend on what data goes in the boxes. 
'For the sake of the answer length we will skip that actual code 

'step two. Take measurements and store them in variables. 
'You will need a start point, and an end point in standard (x1,y1),(x2,y2) form. 
Dim t As Integer 'top 
Dim l As Integer 'left 
Dim b As Integer 'bottom 

'step three. Use these measurements and draw your lines. 
'Try to use looping if your naming and report layout work will allow it. 
Me.Line (l, t)-(l, b), RGB(0, 0, 0) 
'  (x1,y1)(x2,y2),pick a color 
'We just drew a line straight down the length of the control 
'If you plan ahead, and place a line on the report permanently on top of the first row 
'and below every row, you will only need to draw vertical lines. 
'The lines below each row will be pushed down by the tallest control 

我希望這可以幫助。我根本不知道這些東西根本不存在。下面是關於它的MSDN信息:http://msdn.microsoft.com/en-us/library/aa221362%28v=office.11%29.aspx

+0

我的答案下面的答案也非常有用,很多人只會需要下面列出的內容 – misterManager

4

在報表的設計視圖中,選擇詳細信息部分中的所有文本框控件以及頁眉部分中的所有標籤。右鍵單擊其中一個文本框控件,然後選擇佈局 - >表格。控件和標籤現在應該相互對齊。

你使用的Access的版本,但你沒有設置這個作品在這裏Access 2007中

+0

我其實只是發現了另一種解決方法。表格佈局非常接近我所需要的,所以我會加倍努力,以便其他人通過搜索將會看到這個答案以及我將發佈的那個答案,以允許更多的表格顯示。表格佈局唯一的問題是,我無法擺脫這些控件之間的空間。除此之外,這絕對是完美的。 – misterManager

+1

我剛剛遇到了同樣的問題。我想補充一點,我通過向表格佈局添加網格線,然後在一些表格單元格中將填充值更改爲0來解決間距問題。我更改了網格線的顏色,現在看起來就像它一樣之前除了整行與內容一起增長 –

0

OK ......

1 - 進入您的報告,設計視圖

2 - 選擇在細節部分,你想是所有的文本框控件如果任何一個增長,表格和所有的都會增長。

3 - 右鍵單擊​​其中一個選定的文本框控件,然後選擇佈局 - >表格....但是...現在...將文本行控件作爲表格佈局之後...您必須執行更多...

4 - 在報告中FORMAT TAB properties ...將頂部填充,0.00右填充,0.00左填充和0.00底部填充設置爲所有填充屬性爲0.00 ... 0.00。 (默認值通常在0.0208左右)

5請注意,將文本框更改爲表格佈局會引起文本框向右(至少對我而言),因此您可能需要重新調整它們以使它們對齊再次使用頁面標題文本框(如果您有任何可能用於標題名稱的表格,請將列表命名爲列)。

6 - 通過讓底部欄(頁面或報表頁腳)緊貼在表格文本框佈局的底部,並確保上部詳細欄(頁面或報表頁眉)。

7 - 現在,當你看到你的報告中的打印預覽,最大200%以上的放大你仍然會看到你的佈局,但你的細胞之間非常非常小的空間,當你實際打印他們將除非你幾乎無法察覺拿出放大鏡。

-1

我找到了適合我的情況的解決方案,但我想有一個更好的解決方案... 在我的情況下,左側的文本框描述右側1至3張圖片的內容。如果擴大了第一張圖片的高度,文本框會將圖片2和3向下移動,儘管在圖片控件中設計得恰到好處。

我的解決方案:我把文本框的高度屬性設置爲15釐米(例如2英寸),並使其成爲可收縮的。 然而,奇怪的是,這有助於將圖片定位在所需的頂級位置...... :-),並最大限度地減少了使用的水平空間。