文字內的數字 |
尚未結案
|
balado
一般會員 發表:14 回覆:6 積分:4 註冊:2003-12-24 發送簡訊給我 |
|
ENIX007
高階會員 發表:28 回覆:274 積分:185 註冊:2003-11-27 發送簡訊給我 |
balado您好
咦!?我試過是可以的喲...如果只是單純輸入數字的話,可以這麼做
一個Label,一個RichEdit,在RichEdit輸入數字即會顯示於Label
void __fastcall TForm1::RichEdit1Change(TObject *Sender) { Label1->Caption = RichEdit1->Lines->Strings[0].ToInt(); }如果是要輸入運算式,就沒這麼簡單囉... 可以參考http://delphi.ktop.com.tw/topic.php?topic_id=21949 希望以上對您有所幫助 程式迷人之處,在於邏輯思考,然而卻也是惱人之處~~
------
程式迷人之處,在於邏輯思考,然而卻也是惱人之處~~ |
bass15
高階會員 發表:24 回覆:171 積分:119 註冊:2003-10-27 發送簡訊給我 |
|
balado
一般會員 發表:14 回覆:6 積分:4 註冊:2003-12-24 發送簡訊給我 |
|
ENIX007
高階會員 發表:28 回覆:274 積分:185 註冊:2003-11-27 發送簡訊給我 |
balado您好
由於BCB沒有可以直接十六進位轉十進位的函式可用,因此必須自己寫,
不過寫法蠻簡單的,請參考以下程式
< class="code"> .h檔
class TForm1 : public TForm
{
__published: // IDE-managed Components
TRichEdit *RichEdit1;
TLabel *Label1;
private: // User declarations
public: // User declarations
__fastcall TForm1(TComponent* Owner);
int __fastcall HexToInt(AnsiString Hex);//宣告函式
};
.cpp檔
TForm1 *Form1;
int __fastcall TForm1::HexToInt(AnsiString Hex)
{
return StrToInt("$" Hex); //這行就解決啦
}
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
AnsiString str;
int show;
str = RichEdit1->Lines->Strings[0];
//注意RichEdit1我只放一個'1A',如果需要一長串必需搭配SubString()來取
show = HexToInt(str);
Label1->Caption = IntToStr(show);
}
//---------------------------------------------------------------------------
以上程式Label1就顯示26啦 程式迷人之處,在於邏輯思考,然而卻也是惱人之處~~
------
程式迷人之處,在於邏輯思考,然而卻也是惱人之處~~ |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |