|
아래와 같이 코딩은 하고 만들었지만 왠지 찜찜하군요
더 좋은 방법이 없을 까요?
문제는 파일이 두 가지 종류인데 ListBox에서 불러온답니다.
디렉토리 콤포넌트를 안 사용하고 쓰고 싶어서 current_directory라는 함수를 정의해서 불러온답니다.
참고로 만들고 싶은 것은 리스트 창에 여러 파일명이 있을 경우 한 파일을 더블 클릭해서 내용을 보고 싶은 겁니다.
더 좋은 방법이 있는지 ^^;
알려주시면 감사~
void __fastcall TStation12ToShip::MsgProcessDblClick(TObject *Sender)
{
AnsiString F, G, CurrDir;
TStringList *MSG = new TStringList;
TStringList *MSGLog = new TStringList;
char curdir[MAXPATH];
MobileList->Clear();
Sendmsg->Clear();
MSGLog->Clear();
MSG->Clear();
for(int i=0; i<MsgProcess->Items->Count;i++)
{
if(MsgProcess->Selected[i])
{
CurrDir = current_directory(curdir) ;
F = CurrDir + "\\" + MsgProcess->Items->Strings[i];
G = CurrDir + "\\" + MsgProcess->Items->Strings[i].SubString(1,10) + ".TSP";
MSG->LoadFromFile(F);
MSGLog->LoadFromFile(G);
for(int j=0; j<MSG->Count;j++) Sendmsg->Lines->Add(MSG->Strings[j]);
}
}
UserIDWin->Text = MSGLog->Strings[1];
SerialNoWin->Text = MSGLog->Strings[0];
Using_dateWin->Text = MSGLog->Strings[2];
MsgLengWin->Text = MSGLog->Strings[3];
for(int i = 6; i < MSGLog->Count; i++)
{
MobileList->Items->Add(MSGLog->Strings[i]);
}
// 콤보 박스의 텍스트에 첫 아이템을 표시하는데 이 방법 보다 더 좋은 것은??? ^^;
if(MobileList->Items->Count > 0)MobileList->Text = MobileList->Items->Strings[0];
delete MSG;
delete MSGLog;
}
참조 부탁드립니다.
|