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

請問可否在副程式中改變string grid內的字串?

尚未結案
ohsula
一般會員


發表:12
回覆:17
積分:5
註冊:2004-03-02

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-03-29 22:55:56 IP:61.229.xxx.xxx 未訂閱
各位大大我想在以下的副程式中,寫入字串至String grid的cell內,但當程式程執行時,卻出現" Undefined symbol'sg',不知是什麼意思?
 
int do_all_test()
{
     int ok=1;             /* PASS --> ok=1, FAIL --> ok=0 */
     test_1 (&ok);
     if (ok == 0)
         {
           sg->Cells[3][1]="fail";
           sg->Repaint();
           return(ok);
         }
     else
        {
           sg->Cells[3][1]="pass";
           sg->Repaint();
        }    
Auston Huang
------
Auston Huang
RaynorPao
版主


發表:139
回覆:3622
積分:7025
註冊:2002-08-12

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-03-29 23:04:55 IP:61.221.xxx.xxx 未訂閱
引言: 各位大大我想在以下的副程式中,寫入字串至String grid的cell內,但當程式程執行時,卻出現" Undefined symbol'sg',不知是什麼意思?
 
int do_all_test()
{
     int ok=1;             /* PASS --> ok=1, FAIL --> ok=0 */
     test_1 (&ok);
     if (ok == 0)
         {
           sg->Cells[3][1]="fail";
           sg->Repaint();
           return(ok);
         }
     else
        {
           sg->Cells[3][1]="pass";
           sg->Repaint();
        }    
Auston Huang
ohsula 你好:
有兩種解決的方式
(1)把這個 function 宣告成 Form1 class 的 method,先在 Unit1.h 裡面宣
   告 (放在 public 或 private 都可以)
   int __fastcall do_all_test();
   然後在 Unit1.cpp 裡面要改成這樣子
   int __fastcall TForm1::do_all_test()
   {
      //...............
   }
(2)不更改原來的宣告方式,但在程式碼裡面要用到 Form1 裡面的元件的時候,
   都要改成這樣子寫,例如:
   Form1->sg.....
-- Enjoy Researching & Developing --
------
-- 若您已經得到滿意的答覆,請適時結案!! --
-- 欲知前世因,今生受者是;欲知來世果,今生做者是 --
-- 一切有為法,如夢幻泡影,如露亦如電,應作如是觀 --
khaupe
一般會員


發表:28
回覆:25
積分:15
註冊:2003-06-30

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-03-30 17:58:50 IP:140.115.xxx.xxx 未訂閱
引言: 各位大大我想在以下的副程式中,寫入字串至String grid的cell內,但當程式程執行時,卻出現" Undefined symbol'sg',不知是什麼意思?
 
int do_all_test()
{
     int ok=1;             /* PASS --> ok=1, FAIL --> ok=0 */
     test_1 (&ok);
     if (ok == 0)
         {
           sg->Cells[3][1]="fail";
           sg->Repaint();
           return(ok);
         }
     else
        {
           sg->Cells[3][1]="pass";
           sg->Repaint();
        }    
Auston Huang
你可以把StringGrdi1當作do_all_test()的參數去傳 以下是我在用的清StringGri1的副程式 void GridClear(TStringGrid *Sender){ for(int i = 0 ; i <= Sender->ColCount ; i ){ for(int j = 0 ; j <= Sender->RowCount ; j ){ Sender->Cells[i][j] = "" ; } } 宣告就看你要放在哪裡了(我是獨立做成.h再include啦) 用的時候就 GridClear(StringGrid1) ; 醬就行了
xufs
一般會員


發表:16
回覆:26
積分:8
註冊:2003-04-23

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-03-31 11:21:35 IP:202.109.xxx.xxx 未訂閱
引言: 各位大大我想在以下的副程式中,寫入字串至String grid的cell內,但當程式程執行時,卻出現" Undefined symbol'sg',不知是什麼意思?
 
int do_all_test()
{
     int ok=1;             /* PASS --> ok=1, FAIL --> ok=0 */
     test_1 (&ok);
     if (ok == 0)
         {
           sg->Cells[3][1]="fail";
           sg->Repaint();
           return(ok);
         }
     else
        {
           sg->Cells[3][1]="pass";
           sg->Repaint();
        }    
Auston Huang
Undefined symbol'sg'表示sg是未定義符號。 要如此解決﹕ 1。 int do_all_test() { int ok=1; /* PASS --> ok=1, FAIL --> ok=0 */ TStringGrid *sg=new TStringGrid(this); //定義sg,動態創建StringGrid test_1 (&ok); if (ok == 0) { sg->Cells[3][1]="fail"; sg->Repaint(); return(ok); } else { sg->Cells[3][1]="pass"; sg->Repaint(); } delete sg; //删除sg } 2.或在StringGrid所在窗體上選中StringGrid VCL﹐在Object Inspector上修改name項為sg 發表人 - xufs 於 2004/03/31 11:38:43
系統時間:2024-07-06 11:13:09
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!