答案1:
源碼任務心得分享 : 如何使用TChart?
首先先在 Form 中放一個 Tchar 物件
什麼屬性都不要設
再放一個 button , 然後在 Button 的 OnClick 事件中加入下段程式碼
你就知道大概如何手動控制 Tchar 了 , 其他請舉一反三
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Chart1->RemoveAllSeries(); // 清除Chart1上所有舊 Series
Chart1->View3D=false; // 不要 3D 立體
Chart1->Legend->Visible=false; // 不秀圖例說明
// 設定此 char Title 名稱
//(是 StringList 不是 String 所以不能用 Chart1->Title->Text="xxx" ...)
Chart1->Title->Text->Clear();
Chart1->Title->Text->Add("test");
// 動態宣告一個 THorizBarSeries 型態的 Series
// 其它的 Series 型態有哪些 請看 TChartSeries 之 Help
Series1=new THorizBarSeries(Chart1) ;
Series1->ParentChart=Chart1;
Series1->Marks->Visible=true; // 設定要提示說明
Series1->Marks->Style=smsValue; // 提示說明內容為 Label
//(註) Series1->Marks->Style 內容請參考 TSeriesMarksStyle 之 Help
Series1->SeriesColor=clBlue; // 設線條1為藍色,不設則自動給色
// 輸入假資料
int V; // Value
String L; //Label
for (int i = 1; i <= 8; i++)
{
V=i; // Series 值
L="V"+IntToStr(i); // 軸名稱
Series1->Add( V , L , clTeeColor );
}
}
源碼任務心得分享 : 拆解字串段的自寫函式 _StringSegment()
String A="ABCD,EFG,H,IJK,LM";
String B=_StringSegment(A , "," , 3); // 以逗號來做分隔 , 求第 3 段字串
所以 B 就等於 "H"
也可不用逗號做分隔 , 用您指定的其他符號做分隔
String __fastcall TForm1::_StringSegment(AnsiString Str , AnsiString Comma , int Seg)
{
if ((Str=="") || (Seg<1)) return "";
String C=Comma; if (C=="") C=",";
String s=Str;
String sTmp;
String r;
int iPosComma;
TStringList *TempList = new TStringList; // declare the list
TempList->Clear();
while (s.Pos(C)>0)
{
iPosComma = s.Pos(C); // locate commas
sTmp = s.SubString(1,iPosComma - 1); // copy item to tmp string
TempList->Add(sTmp); // add to list
s = s.SubString(iPosComma + 1,s.Length()); // delete item from string
}
// trap for trailing filename
if (s.Length()!=0) TempList->Add(s);
if (Seg > TempList->Count)
r="";
else
r= TempList->Strings[Seg-1];
delete TempList; // destroy the list object
return r;
}
答案2:
1、代码设计时要终止返回,直接在需要返回的地方用return;
2、运行时要终止,直接关闭程序。:)