全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1048
推到 Plurk!
推到 Facebook!

用maskedit元件會出現錯誤

答題得分者是:ikk
cyjhs90146
一般會員


發表:11
回覆:7
積分:3
註冊:2009-02-01

發送簡訊給我
#1 引用回覆 回覆 發表時間:2009-03-10 12:54:46 IP:220.141.xxx.xxx 訂閱
就是我現在是使用maskedit元件來控制數字
就是控制0~16我有用CSpinButton來一個一個加
可是我0~9都沒問題到10就有問題了
這是我的程式碼片段
//-------------------------------------------------------------------
void __fastcall TMainForm::Sector1Change(TObject *Sender)
{
int address = StrToIntDef(Sector->Text, 0);
int w=0,x=1,y=2,z=3;

if (address > MainForm->AddressMax)
address = MainForm->AddressMax;
else if (address < 0)
address = 0;
AnsiString s;
AnsiString a;
AnsiString b;
AnsiString c;
AnsiString d;
s.printf("%d", address);
Sector->Text = s;
if (address > StrToIntDef(Sector->Text, 0))
Sector->Text = s;
s = "";
s.printf("X", address);

w=w s*4;
a.printf("X",w);
BlockAddress1->Text = a;


x=x s*4;
b.printf("X",x);
BlockAddress2->Text = b;

y=y s*4;
c.printf("X",y);
BlockAddress3->Text = c;

z=z s*4;
d.printf("X",z);
BlockAddress4->Text = d;

}
//------------------------------------------------------------------------------------

就是輸入10開始就會出現這個

然後他就停住了= =
停在inline Variant __fastcall operator * (const AnsiString& lhs, const Variant& rhs)
{return Variant(lhs).operator *(rhs);}
這裡

我想應該是乘法的地方出錯
可是我看不出來
所以請各位大大幫我一下
我還在研究中
感謝大家^^
ikk
尊榮會員


發表:4
回覆:413
積分:768
註冊:2003-06-30

發送簡訊給我
#2 引用回覆 回覆 發表時間:2009-03-10 15:53:33 IP:163.28.xxx.xxx 訂閱
s 是AnsiString要運算前應該要轉換吧...
w=w s.ToInt()*4;
------
FPGA驗證, FPGA開發平台, http://smims.com
系統時間:2024-04-25 15:33:34
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!