C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[21910] Re:ListBox를 이용하는데 잘 모르는 부분이...
최준호.스페로 [sparrow] 1131 읽음    2002-10-07 00:46
Kill.D.M 님이 쓰신 글 :
: 제가 리스트 박스를 이용해서 플레이어 리스트 같은 형식을 만들려구 하는데여...
: 우선 OpenDialog에서 멀티 셀렉트는 햇구여.
: 그담에 그 멀티 셀렉한 파일들을 리스트 박스에 전부 뿌려주구...리스트에
: 써 있는 이름을 클릭하믄 그 파일이 실행되는 식의 프로그램을 구현하려고 하는데여..
: 이때는 어떤 컴포넌트를 이용해야되는지.. 그냥 ListBox를 이용하면 클릭하려면
: 마우스 커서가..ㅜ.ㅜ
: 그래서 CheckListBox를 이용하려고 하는데.. 사용법을잘..다른데 찾아보구 책찾아봤지만.
: 원하는 답변은 얻지 못했네여..
: 우선 궁금한게.
: 1. 멀티 셀렉트한 것을 ListBox에 전부 뿌려주는 것이구여..
: 2. ListBox에 뿌려준 파일을 클릭 하는것입니다 (따로 쓰는 것은 안되구 오직 클릭만 가능하게..)
: 아시는 분 있으시면 답변좀 해주세염 ^^::;

안녕하세요 스페로입니다...

제가 만든 아주오래전 허접한 실력으로 만들었던 SMPlay2에서 발췌된 소스를 부분 부분 붙여

님이 원하시는 작업을 알려 드리겟습니다.

//파일추가 클릭

      char buff[MAX_PATH]; //파일의 경로명을 기억하기위한 버퍼;
      String tmp; //임시 파일이름 저장...


        OpenDialog1->Options << ofAllowMultiSelect << ofFileMustExist;
        OpenDialog1->Filter="Media files *.asx;*.mpg;*.mpeg;*.dat;*.mp3;*.mp2;*.wmv|*.*|*.*";

        if (OpenDialog1->Execute()){
           for (int I = 0; I < OpenDialog1->Files->Count; I ++) {

           lstboxPlayList->Items->Add(OpenDialog1->Files->Strings[I]);
           }
        }

위코드는 오픈다이얼로그를 멀티 셀렉트해서 리스트 박스에 집어넣는 방법을 제시하고 잇습니다.

소스에 주어져있는 컴퍼넌트 이름은 제가 이름 짓는 방식이니 고쳐 쓰세요..

그리고 그냥 리스트 박스를 이용했습니다.

두번째 질문에 대한 답변으로는

리스트박스에서 클릭이벤트에서는 플레이버튼을 활성하는 작업을 하고요

더블클릭에서는 플레이를 하게 합니다.

리스트 박스는 선택된 아이템을 알아올수 잇는데요

저는 참고적으로 윈미디어를 이용햇으므로 리스트박스에서 파일이름을 윈미디어에게 주어야 합니다.

       //플레이어에게 파일전송
        String fileName,tmp;
        int sp;

        fileName=(String)lstboxPlayList->Items->Strings[lstboxPlayList->ItemIndex];


       //smi 파일 이름 전송
       tmp=fileName;
       sp=tmp.Pos(".");
       tmp=tmp.Delete(sp,tmp.Length());
       tmp+=".smi";

        frmSMP2->MP->SAMIFileName=tmp;

        frmSMP2->MP->Visible=true;
        frmSMP2->MP->FileName=fileName;


위소스 코드는 파일이름을 리스트 박스로 부터 얻어오는 것입니다.

그럼 즐거운 코딩 되세요...

smplay는 공개 소스이고요 여기 리소스 게시판에 보면 잇습니다...

허접하다고 욕하지 마세욥~~


+ -

관련 글 리스트
21903 ListBox를 이용하는데 잘 모르는 부분이... Kill.D.M 718 2002/10/06
21910     Re:ListBox를 이용하는데 잘 모르는 부분이... 최준호.스페로 1131 2002/10/07
21911         Re:스페로님 정말 고맙습니다...^^* Kill.D.M 812 2002/10/07
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.