August 2, 2019 Comments(0) Uncategorized

    wxwidgets 예제

    이 예제에서는 응용 프로그램에 대 한 아이콘을 제공 합니다. 창의 왼쪽 위 모서리에 작은 아이콘을 표시하는 표준이 되었습니다. 아이콘은 프로그램의 그래픽 ID입니다. 위젯이 응용 프로그램에서 통신 할 수있는 방법을 아는 것이 중요합니다. 다음 예제를 따르십시오. 마지막으로, 이러한 이벤트에 대한 대응은 처리 중인 이벤트에 해당하는 형식의 이벤트 매개 변수를 취하는 기능(또는 C++11을 사용하는 경우 람다를 포함한 펑터)인 “이벤트 처리기”를 통해 수행됩니다. 버튼, 텍스트 필드 및 메뉴 항목과 같은 간단한 컨트롤을 제공합니다. 이 예제에서는 사용자 지정 “Hello”와 “종료” 및 “정보” 항목(모든 프로그램이 일반적으로 후자의 두 항목을 구현해야 있음)의 세 가지 메뉴 항목에 반응합니다. 이러한 처리기는 가상 또는 공용일 필요가 없습니다.

    캡션은 최소한의 예제를 반영하도록 변경되며, 이는 동일한 결과를 달성하기 위해 키 조합을 사용하는 것을 보여줍니다. 우리는 단순히 Alt +X를 choode 할 수 있으며 프로그램이 종료되어야합니다. 나중에 사용할 경우 각 구성 요소에 고유한 정수 식별자가 지정되어야 합니다. 이 예제에서는 2개의 단추에 식별자 1과 2가 지정됩니다. wxWidgets가 사용하지 않는 식별자를 자동으로 할당할 수 있도록 wxID_ANY, wxID_EXIT 등 일부 표준 이벤트 식별자가 있습니다. wxSocket이 빌드되는 이벤트 지향 시스템에 익숙해지려면 다소 시간이 걸릴 수 있지만 많은 이점이 있습니다. 예를 들어, 서버 응용 프로그램은 단일 스레드(물론 fork() 또는 추한 select() 루프를 사용하지 않고 임의의 수의 연결을 처리할 수 있음)을 참조하십시오. 샘플 응용 프로그램에는 사용자 지정 속성의 추가 예가 있습니다. 예를 들어 wxWidgets 기반 프로그램은 명시적 주 프로시저가 없습니다. 위젯을 만들고 적절한 콜백이 호출되도록 설정하는 작업을 수행하는 것입니다. 그런 다음 주 이벤트 루프를 호출하여 응용 프로그램에 대한 제어를 제공합니다. 그 때부터 프로그램은 이벤트를 기다립니다.

    이러한 경우 프로그램은 적절한 콜백을 호출한 다음 다음 이벤트를 기다립니다. 루프를 종료하는 것은 프로그램에서 종료됩니다. 이 장에서는 wxWidgets 응용 프로그램을 만드는 데 필요한 기본 사항에 대해 설명합니다. 우리는 우리의 첫 번째 간단한 예제를 만들 것입니다., 아이콘을 표시 하는 방법을 보여. 다음으로 이벤트의 사용을 보여 주는 간단한 예제를 만듭니다. 마지막으로 위젯이 wxWidgets 응용 프로그램에서 통신하는 방법을 볼 수 있습니다. wxWidgets는 매크로를 사용합니다: 그들은 어렵지 않다, 하지만 당신은 전에 그들을 본 적이 없을 수 있습니다. 규칙에 따라 대문자 이름(예: IMPLEMENT_APP)이 있습니다. 코드가 컴파일러에 도달하기 전에 사전 프로세서가 “인라인” C/C++로 확장됩니다.

    다음은 섭씨를 화씨로 변환하기 위해 매크로를 작성하고 사용하는 예입니다. 창의 가운데가 있습니다. 지금까지 언급 한 모든 것은 표준 wxWidgets 클래스를 사용하여 최소한의 코드로 구현되었습니다. 주 프레임 메뉴에서 셰이프 프레임을 만들 면 고급 기능을 보여 줍니다. 셰이프는 위치, 크기 및 색상이 있는 기하학적 개체입니다. 이 샘플의 일부 응용 프로그램 별 데이터를 모델합니다. 셰이프 객체는 자체 개인 wxDataFormat을 지원하므로 한 샘플 인스턴스에서 다른 샘플 인스턴스(또는 동일하거나 동일한 셰이프 간에)를 잘라내어 붙여넣거나 드래그 앤 드롭할 수 있습니다. 그러나 다른 프로그램이 이 형식을 지원하지 않으므로 셰이프를 비트맵으로 렌더링하여 다른 많은 응용 프로그램에서 붙여 넣기/삭제할 수 있습니다(Windows에서는 대부분의 Windows 프로그램에서 지원하는 메타파일로도 사용할 수 있습니다.

    잘 – 예를 들어 쓰기 / 워드 패드를 보십시오.