線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:2294
推到 Plurk!
推到 Facebook!

Form的美觀問題。

答題得分者是:老大仔
tokiama
一般會員


發表:34
回覆:60
積分:23
註冊:2009-04-19

發送簡訊給我
#1 引用回覆 回覆 發表時間:2009-09-17 23:16:25 IP:220.140.xxx.xxx 訂閱
小弟一直覺得Form本身的樣子真的很呆版...

Form本身有有關於外形設定的屬性嗎?

就是啊,Form本身不是四方型灰色的,我可以讓他的外形不要四方形嗎?就是跟圖形一樣的形狀。

假如我的圖片是一個HelloKetty的去背圖片檔,可以讓我的Form跟圖檔一樣的形狀嗎?

也可以說成就是那章圖變成我Form,上面會有我的一些元件。
老大仔
尊榮會員


發表:78
回覆:837
積分:1088
註冊:2006-07-06

發送簡訊給我
#2 引用回覆 回覆 發表時間:2009-09-18 07:34:36 IP:59.120.xxx.xxx 未訂閱
站上已經有許多討論文章了
請先爬爬文~
heartgame0
一般會員


發表:2
回覆:29
積分:11
註冊:2008-07-28

發送簡訊給我
#3 引用回覆 回覆 發表時間:2009-09-18 11:08:48 IP:220.131.xxx.xxx 訂閱
可以用圖片當版面,各種形狀都行。(不用去背,特定顏色就可以透明,但上面放的東西也會顯示不出來)。

也可以讓form變成3角形,我看過3角形,應該可以多邊形吧,

但是都不是屬性直接改,也忘了是不是別人寫的元件。

多找找,我還有很多東西沒找到(當然可以自已改出來,我也想自己寫出來)

ps、另外想問,變形只有在window可以,不知道linux有嗎?只想問有人clx應用,

有人有看過嗎?如果有,才比較放心,慢慢找。
------
資訊業是永遠不能停止學習的行業!
但是進步都只是一點點一點點!
==可以不用理我!因為我的程度只有2成,或許不到!!
==我只會拉拉元件,打打迴圈,打打條件判斷,連連資料庫,rs232送送訊號,印表機簡單列印。
只有寫寫小小的點餐軟體(為何想寫,因為叫人家改的小東西,都ooxx,是會付錢的又不是沒錢,但是理由還是一堆)
編輯記錄
heartgame0 重新編輯於 2009-09-18 11:11:30, 註解 無‧
heartgame0 重新編輯於 2009-09-20 21:23:23, 註解 無‧
tokiama
一般會員


發表:34
回覆:60
積分:23
註冊:2009-04-19

發送簡訊給我
#4 引用回覆 回覆 發表時間:2009-09-20 17:03:46 IP:220.140.xxx.xxx 訂閱
爬了文,感覺跟想要得東西還是有所差異。

要達到小弟的要求一定要用元件嗎?或去去算圖片的外圍,然後去複製下來嗎?

以下是找的的連結之一:
http://delphi.ktop.com.tw/board.php?cid=168&fid=913&tid=28040

還有的方發是用Frame,說Frame也是Form的一種。
編輯記錄
tokiama 重新編輯於 2009-09-20 23:09:28, 註解 無‧
老大仔
尊榮會員


發表:78
回覆:837
積分:1088
註冊:2006-07-06

發送簡訊給我
#5 引用回覆 回覆 發表時間:2009-09-21 07:44:49 IP:59.120.xxx.xxx 未訂閱
不見的一定要用別人寫的元件啊
在您找的文章中
其中的第六篇回應不知道有沒有去深入的再看一下
http://delphi.ktop.com.tw/board.php?cid=168&fid=913&tid=28040#6
我想那幾個連結就大概可以達到您要的效果了吧

ps:frame不是用來美化的唷
既然都說了它是form的一種
那也就代表著...先得把form給美化~

tokiama
一般會員


發表:34
回覆:60
積分:23
註冊:2009-04-19

發送簡訊給我
#6 引用回覆 回覆 發表時間:2009-09-21 20:56:01 IP:220.140.xxx.xxx 訂閱
小的又在爬了一次之前所找的東西,好像大多都是用C++寫的。PS:小弟我沒碰過C++。

得到的結論是下面:
[code delphi]
var
Form1: TForm1;
H:hbitmap;
A:hrgn;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
Image1.Transparent:=true;
form1.AutoSize:=true;
form1.BorderStyle:=bsNone;
H:=image1.Picture.Bitmap.Handle;
//A:=GetPictureRegion(h,0x00ffffff,0x0);
SetWindowRgn(Handle,H{hrgn},true);
end;

[/code]

可是結果怪怪的,也不是我想要的結,雖然不知道這是在講什麼東西,就照的C 別人寫出來的東西去弄的。

H:=image1.Picture.Bitmap.Handle;這行加下去後,雖然圖片產生了去背的效果,但也看到了form的顏色。

所以其實上面這段程式碼只是把form藏起來?只顯示form上的原件而以嗎?

然後這一行A:=GetPictureRegion(h,0x00ffffff,0x0);是C 特有的函式嗎?Delphi沒有嗎?這好像可以遮掉指定的顏色?

SetWindowRgn(Handle,H{hrgn},true);這一行...完全沒有頭緒。

老大仔
尊榮會員


發表:78
回覆:837
積分:1088
註冊:2006-07-06

發送簡訊給我
#7 引用回覆 回覆 發表時間:2009-09-22 08:04:40 IP:59.120.xxx.xxx 未訂閱
GetPictureRegion請查help
以下是解說:

The GetPenResource function retrieves a copy of a pen services resource. (Japanese version only.)
HANDLE GetPenResource( WPARAM wParam )
Parameters
wParam
Specifies the pen services resource for which to retrieve a handle.
his may be one of the following:
Constant Description
GPR_CURSPEN Standard pen cursor.
GPR_CURSCOPY Copy cursor.
GPR_CURSUNKNOWN Unknown cursor.
GPR_CURSERASE Erase cursor.
GPR_BMCRMONO Monochrome Return bitmap.
GPR_BMLFMONO Monochrome LineFeed bitmap.
GPR_BMTABMONO Monochrome Tab bitmap.
GPR_BMDELETE Delete bitmap.
GPR_BMLENSBTN Lens buttonface bitmap.
GPR_BMHSPMONO Hankaku space bitmap (Japanese version only).
GPR_BMZSPMONO Zenkaku space bitmap (Japanese version only).

Comments
An application can use this function to get a copy of a cursor or bitmap used by pen services.
It is the application's responsibility to destroy the object by calling either the
DestroyCursor or DeleteObject Windows API.
Return Value
·This function returns a handle to an object, depending on the index specified by wParam if successful.
Otherwise the return value is NULL.
·The following sentence has been added to the Comments section of the SetPenAppFlags function.
If both RPA_DBCSPRIORITY and RPA_SBCSPRIORITY are specified, the RPA_SBCSPRIORITY is ignored.
·In the TrainHREC function, the following sentence has been appended to the Comments section.
Training gestures depends on the recognizer.
The Microsoft Handwriting Recognizer (GRECO.DLL in US, RODAN.DLL in Japan) does not
support training for gestures.
編輯記錄
老大仔 重新編輯於 2009-09-22 08:05:32, 註解 無‧
老大仔 重新編輯於 2009-09-22 08:34:07, 註解 無‧
小傑克
資深會員


發表:5
回覆:209
積分:357
註冊:2009-02-16

發送簡訊給我
#8 引用回覆 回覆 發表時間:2009-09-23 22:35:12 IP:59.112.xxx.xxx 訂閱
我有整理簡單的sample, 你參考依下
http://fang1004tw.blogspot.com/2009_03_01_archive.html#4586188030318430660

基本上handle 傳什麼都行,按鈕, form....只要是有handle的物件
比較麻煩的是要如何生成多邊形邊界的陣列
我也有試做一個圖形繞邊的方法. 只要圖形有底色大致上是可行的,你可以參考看看
http://fang1004tw.blogspot.com/2009_03_01_archive.html#9073154506936253308
------
額有朝天骨,眼中有靈光
系統時間:2024-05-16 18:35:24
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!