2014-04-15 4 views
0

벡터에서 여러 개의 만들어진 레이블을 양식으로 반환하고 양식에 추가하려고합니다. 하지만 난 많은 오류가 발생합니다, 내 생각 엔 내가 포인터를 사용하는 ref 클래스를 사용하고 있습니다 ^). 코드 (약간 수정) 버튼의 handlare에서 처음에 작동하지만 그때 나는 그것을 적응 (예 : 맞게 수정) 클래스 메서드에 많은 오류가 발생했습니다 "오류 C3699 : '* ':이 유형을'System :: Windows :: Forms :: Label ' 유형으로 사용할 수 없으며 약 80 개의 오류가 있습니다. 내가 뭘 잘못하고 있니?레이블의 벡터를 반환하는 ref 클래스

코드 : 헤더 파일 :

ref class Bingo 
{ 
public: 
    Bingo(); 
    ~Bingo(); 
    //void HighscoreLista(); 
    //void SkickaText(); 
    vector<Label> StartaSpelet(); 
    vector<int> bricka(); 
    //void AvslutaSpelet(); 
    //void VisaAndraSpelet(); 
private: 
    vector<int> *pV; 
    vector<Label> *pL; 
    Label ^myText; 
    string *NamnPaSpelet; 
}; 

CPP 파일 :

Bingo::Bingo() 
{ 
    NamnPaSpelet = new string("Bingo"); 
    pV = new vector<int>; 
    pL = new vector<Label>; 
    myText = gcnew Label; 
    srand(time(NULL)); 
} 

Bingo::~Bingo() 
{ 
    delete NamnPaSpelet; 
    delete pV; 
} 


vector<Label> Bingo::StartaSpelet() 
{ 
    Point punkt(25,60); 
    //First label to show the next pulled number 

    myText->Text = "click on \"next number\" to start"; 
    myText->Location = Point(20,20); 
    myText->Name="lblDragetNummer"; 
    myText->AutoSize=true; 
    (*pL).push_back(myText); 

    //creates the rest of the labels (25) 
    for(int i =1; i<=25; i++) 
    { 

     if (i>0 && i<=5) 
      punkt = Point(25+(30*i),60); 
     if(i>5 && i <= 10) 
      punkt = Point(25+(30*(i-5)),90); 
     if(i>10 && i<=15) 
      punkt = Point(25+(30*(i-10)),120); 
     if(i>15 && i <=20) 
      punkt = Point(25+(30*(i-15)),150); 
     if(i>20 && i <=25) 
      punkt = Point(25+(30*(i-20)),180); 

     myText->Text = "Test"; 
     myText->Location = punkt; 
     myText->AutoSize=true; 
     (*pL).push_back(myText); 
    } 

    return *pL; 
} 

답변

0

포인터 - 벡터 레이블 심판의로 포인터 - 벡터를 정의하십시오 :

vector<Label^> *pL; 
+0

hat로 변경 한 다음 myText를 다음으로 변경했습니다. Label^myText = gcnew Label; 벡터를 사용하여 작업 할 수 있지만 여전히 @만큼의 오류를 생성합니다. – MattiasLarsson

+0

나는 심지어 점의 벡터를 만들려고 시도하고 그것을 반환, 그 중 하나를 작동하지 않습니다. – MattiasLarsson

+0

아, 죄송합니다. 멍청한 순간 이었어. –