반응형

프로젝트 26

[C# 프로젝트] 테트리스 만들기

1. 키보드로 도형 제어하기, 타이머로 도형 아래로 이동 안녕하세요. 언휴예요. 이번 강의는 미니 프로젝트 “테트리스” 만들기 중에 첫 번째 파트입니다. 테트리스는 총 4개의 파트로 나누어져 있으며 동영상 강의 기준으로 80여분 요구합니다. 이번 강의에서는 사각형 하나를 키보드로 이동시키고 타이머로 내리기입니다. 본문 바로가기 Part 2. 테트리스 도형 정의하기, 도형 회전하기 안녕하세요. 언휴예요. 이번 강의는 “[언제나 프로젝트] 테트리스 Part2″입니다. 현재 작업한 내용은 다음과 같습니다. 게임 공간 정의 키보드로 도형 이동(좌, 우, 아래) 타이머로 도형 내리기 이번 강의에서 다룰 내용은 다음과 같습니다. 테트리스 도형 모양 정의 회전 본문 바로가기 Part 3. 벽돌 쌓기 안녕하세요. 언휴..

중앙 관제 - Windows Forms 앱

중앙 관제는 Windows Forms 앱(.NET Framework)입니다. CentralForm.cs using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Net; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using WaferLineCommLib; using WaferLineLib; namespace 중앙_관제 { public partial class CentralForm : Form { publ..

WaferLine 공장 시뮬레이션 - Windows Forms

WaferLine 공장 시뮬레이션은 Windows Forms 앱(.NET Framework)입니다. 1. Manager.cs using System.Net; using WaferLineCommLib; using WaferLineLib; namespace WaferLine_공장_시뮬레이션 { public class Manager { public event RecvStsEndPtEventHandler RecvStsEndPoint; public event AddWaferEventHandler AddedWafer; public event AddPREventHandler AddedPR; public event SetSpeedEventHandler SettedSpeed; public event SetDropEven..

WaferLineCommLib - 클래스 라이브러리

WaferLineCommLib는 클래스 라이브러리(.NET Framework)입니다. 1. MsgType.cs namespace WaferLineCommLib { public enum MsgType { MSG_CF_ADDSI, MSG_CF_ADDWF, MSG_CF_ADDPR, MSG_CF_SETSP, MSG_CF_SETDR, MSG_FC_ADDLN, MSG_FC_ADDWF, MSG_FC_ADDPR, MSG_FC_SETSP, MSG_FC_SETDR, MSG_FC_ENDPR, MSG_FC_ENDCO } } 2. MyNetwork.cs using System.Collections.Generic; using System.Net; using System.Net.Sockets; namespace WaferLineC..

WaferLineControlLib - Windows Forms 컨트롤 라이브러리

WaferLineControlLib는 Windows Forms 컨트롤 라이브러리(.NET Framework)입니다. 1. DPanel.cs using System.Windows.Forms; namespace WaferLineControlLib { public class DPanel : Panel { public DPanel() { SetStyle(System.Windows.Forms.ControlStyles.OptimizedDoubleBuffer | System.Windows.Forms.ControlStyles.UserPaint | System.Windows.Forms.ControlStyles.AllPaintingInWmPaint, true); UpdateStyles(); } } } 2. WaferPan..

WaferLineLib 라이브러리

WaferLineLib는 클래스 라이브러리(.Net Framework)입니다. 1. Wafer.cs namespace WaferLineLib { /// /// Wafer 클래스 /// public class Wafer { static int last_wn; readonly int wn; int[] cells = new int[100]; int now; /// /// 기본 생성자 /// public Wafer() { last_wn++; wn = last_wn; } /// /// 현재 코팅할 쉘 번호 - 가져오기 /// public int Now { get { return now; } } /// /// 코팅할 쉘 번호 증가시키기 /// /// 증가 성공 여부 public bool Increment() { i..

화면 캡쳐 및 이미지 송신 클라이언트 및 수신 서버 구현하기

원격제어 프로그램 만들기에서 구현한 이미지 송수신 부분을 라이브러리로 만들고 이를 이용하여 클라이언트와 서버 응용을 만드는 실습입니다. ImageClient.cs //http://ehpub.co.kr //원격 제어 프로그램 //7. 이미지 전송 클라이언트 using System; using System.Drawing; using System.Drawing.Imaging; using System.IO; using System.Net; using System.Net.Sockets; namespace 원격제어_프로그램 { /// /// 이미지 전송 클라이언트 /// public class ImageClient { Socket sock; /// /// 연결 메서드 /// /// 연결할 서버 측 IP주소 /// ..

원격 제어 프로그램 만들기 9. 화면 수신 서버

원격 제어 컨트롤러에서는 호스트 화면을 주기적으로 수신하여 이를 폼에 뿌려주어야 합니다. 이를 위해 화면을 수신하는 서버 클래스의 소스 코드입니다. 소스 코드 ImageServer.cs //ImageServer.cs using System.Net.Sockets; using System.Threading; using System.Net; using System.Drawing; using System.IO; using System; namespace 원격제어기 { /// /// 이미지 수신 서버 /// public class ImageServer { Socket lis_sock; //Listening 소켓 Thread accept_thread = null; /// /// 이미지 수신 이벤트 /// publi..

원격 제어 프로그램 만들기 8. 화면 수신 이벤트 인자 클래스 구현

이미지 수신 서버에서 이미지를 수신할 때마다 폼에 이를 알려주어야 합니다. 이를 위해 이벤트 처리하기 위한 대리자와 이벤트 인자 클래스를 정의합니다. 소스 코드 RecvImageEventArgs.cs //RecvImageEventArgs.cs using System; using System.Net; using System.Drawing; namespace 원격제어기 { /// /// 이미지 수신 이벤트 인자 클래스 /// public class RecvImageEventArgs : EventArgs { /// /// IP 단말 - 가져오기 /// public IPEndPoint IPEndPoint { get; private set; } /// /// IP 주소 - 가져오기 /// public IPAddr..

원격 제어 프로그램 만들기 7. 원격 제어 – 화면 전송

원격 제어를 허용한 호스트의 전체 화면을 제어하는 컨트롤러에게 주기적인 화면을 전송해 주어야 합니다. 다음은 화면을 주기적으로 전송하는 클라이언트 소스 코드입니다. 소스 코드 ImageClient.cs //ImageClient.cs using System; using System.Net.Sockets; using System.Net; using System.IO; using System.Drawing.Imaging; using System.Windows.Forms; using System.Drawing; namespace 원격제어기 { /// /// 이미지 전송 클라이언트 /// public class ImageClient { Socket sock; /// /// 생성자 /// /// 컨트롤러의 IP 주..

반응형