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

Delphi 2009 的 Edit.Text 型別轉換問題

答題得分者是:jasper_dale
pcboy
版主


發表:177
回覆:1838
積分:1463
註冊:2004-01-13

發送簡訊給我
#1 引用回覆 回覆 發表時間:2009-03-30 10:02:00 IP:61.220.xxx.xxx 訂閱
請問下面問題該如何節覺 ?
Delphi 2009 的 Edit1.Text 預設是 Unicode String ?

[code delphi]
procedure TForm1.FormCreate(Sender: TObject);
var
FIPAddress :Cardinal;
StrAddress :PAnsiChar;
PAnsiChar1 :PAnsiChar;
PAnsiChar2 :PAnsiChar;
PAnsiChar3 :PAnsiChar;
in1 : in_addr;
in2 : in_addr;
begin
{
unsigned long inet_addr(
const char* cp
);


char* FAR inet_ntoa(
struct in_addr in
);

S_un
S_un_b
An IPv4 address formatted as four u_chars.
S_un_w
An IPv4 address formatted as two u_shorts.
S_addr
An IPv4 address formatted as a u_long.

}

// 失敗做法
EditIP.text:='192.168.1.10';
PAnsiChar1 := PAnsiChar(EditIP.Text); // PAnsiChar1 得到值 1, 這行該如何改才對 ?
in1.S_addr := inet_addr(PAnsiChar1);
in1.S_addr := inet_addr(PAnsiChar(EditIP.Text));
StrAddress := inet_ntoa(in1);
Edit1.Text := StrAddress;

// 成功作法
in2.S_addr := inet_addr(PAnsiChar('192.168.1.10'));
PAnsiChar2 := PAnsiChar('192.168.1.10'); // PAnsiChar1 得到值 192.168.1.10
in2.S_addr := inet_addr(PAnsiChar2);
StrAddress:=inet_ntoa(in2);
Edit2.Text := StrAddress;

end;

[/code]
------
能力不足,求助於人;有能力時,幫幫別人;如果您滿意答覆,請適時結案!

子曰:問有三種,不懂則問,雖懂有疑則問,雖懂而想知更多則問!
h@visli
資深會員


發表:101
回覆:416
積分:418
註冊:2004-02-13

發送簡訊給我
#2 引用回覆 回覆 發表時間:2009-04-01 08:33:59 IP:218.18.xxx.xxx 未訂閱
關注,建議你貼到 http://stackoverflow.com/ 去,也許很快可以收到回覆。
------
------------------------
博采眾家之長,奉獻綿薄之力
------------------------
jasper_dale
初階會員


發表:2
回覆:48
積分:35
註冊:2005-09-19

發送簡訊給我
#3 引用回覆 回覆 發表時間:2009-04-01 09:08:35 IP:220.130.xxx.xxx 訂閱
小弟的笨方法!

[code delphi]
procedure TForm2.Button1Click(Sender: TObject);
var
AnsiStr: AnsiString;
PAnsiChar1 :PAnsiChar;
begin
EditIP.Text := '192.168.1.10';
AnsiStr := EditIP.Text;
PAnsiChar1 := PAnsiChar(AnsiStr);
ShowMessage(PAnsiChar1);
end;
[/code]
------
{"name":{["賈氏柏"]}}
pcboy
版主


發表:177
回覆:1838
積分:1463
註冊:2004-01-13

發送簡訊給我
#4 引用回覆 回覆 發表時間:2009-04-01 10:55:15 IP:61.220.xxx.xxx 訂閱

在 Delphi 2009 測試 OK, 感謝
------
能力不足,求助於人;有能力時,幫幫別人;如果您滿意答覆,請適時結案!

子曰:問有三種,不懂則問,雖懂有疑則問,雖懂而想知更多則問!
系統時間:2017-10-20 2:28:59
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!