태그: Drag Drop

안녕하세요. 언제나 휴일에 언휴예요.

이번에는 P2P 메신저의 파일 송수신 기능을 구현할 거예요.

이미 P2P 메신저에서 숏 메시지를 송수신하는 부분은 구현했어요.

그리고 파일 전송 클라이언트파일 수신 서버도 구현했죠.

이번 강의에서는 파일 전송 클라이언트와 파일 수신 서버를 라이브러리를 만들고 이를 참조하여 P2P 메신저에 파일 송수신 기능을 구현할 거예요.

파일 송수신 라이브러리에 사용할 소스 코드는 앞에서 제작한 파일 전송 클라이언트와 파일 수신 서버에 있는 소스 코드를 그대로 사용합니다.

1. 컨트롤 추가 배치

먼저 Form1에 자신의 파일 수신 서버 포트와 전송할 때 상대 파일 수신 포트를 입력할 텍스트 상자를 추가합니다. 그리고 설정 버튼을 추가하세요.

그리고 파일을 마우스로 드래그하여 리스트 박스에 옮기면 전송할 수 있게 할 거예요. 이를 위해 리스트 박스에 AllowDrop 속성을 true로 설정 변경하세요.

[그림] 컨트롤 추가 배치

2. 컨트롤의 이벤트 핸들러 등록

btn_my_fset 버튼과 btn_other_fset 버튼 Click 이벤트 핸들러를 등록하세요.

메시지 리스트 박스인 lbox_msg의 DragEnter와 DragDrop 이벤트 핸들러를 등록하세요.

3. 소스 코드 구현

Form1.cs 파일에 추가한 이벤트 핸들러를 구현합니다. 다른 부분은 차이가 없어요.