콤보 상자에서 사용 가능한 모든 VCL 스타일을 나열하고 ComboBoxChange 이벤트에서 C++ Builder에서 해당 스타일을 적용하려면 어떻게 해야 합니까?

조던 휴스턴

현재 사용자가 기본 설정에 VCL 스타일을 선택할 수 있는 기능을 내 응용 프로그램에 추가하려고 합니다. 모든 스타일을 ComboBox에 직접 추가할 수도 있지만 훨씬 더 쉬운 방법이 있다고 확신합니다.

사용자186876

새 C++Builder VCL 애플리케이션을 만듭니다. 프로젝트에서 | 옵션 | 신청 | 모양 메뉴에서 일부 사용자 정의 스타일 이름을 선택합니다.

그런 다음 Button 및 ComboBox 상자 구성 요소를 C++ VCL 양식에 추가합니다. Button의 onlick 및 ComboBox의 Change 이벤트에 대해 다음 코드를 사용합니다. 또한 #include를 폼의 소스 코드 상단 근처에 배치해야 합니다. :D 컴파일하고 실행하고 버튼을 클릭하면 프로젝트 옵션에서 선택한 스타일로 채워진 콤보 상자가 표시됩니다. 그런 다음 콤보 상자에서 스타일 중 하나를 선택하여 앱의 스타일을 변경합니다.

RAD Studio 10.4 Sydney로 이 코드를 테스트했습니다. C++Builder의 최신 릴리스에서 작동해야 합니다.

void __fastcall TForm1::Button1Click(TObject *Sender)
{
    ComboBox1->Items->BeginUpdate();
    try
    {
        ComboBox1->Items->Clear();

        DynamicArray<String> styleNames = Vcl::Themes::TStyleManager::StyleNames;

        for(int i = 0; i < styleNames.Length; ++i)
        {
            String styleName = styleNames[i];
            ComboBox1->Items->Add(styleName);
        }
    }
    __finally
    {
        ComboBox1->Items->EndUpdate();
    }
}

void __fastcall TForm1::ComboBox1Change(TObject *Sender)
{
    // set the style for the selected combobox item
    Vcl::Themes::TStyleManager::TrySetStyle(ComboBox1->Items->Strings[ComboBox1->ItemIndex],false);
}

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

TOP 리스트

  1. 1

    셀레늄의 모델 대화 상자에서 텍스트를 추출하는 방법은 무엇입니까?

  2. 2

    Blazor 0.9.0 및 ASP.NET Core 3 미리보기 4를 사용한 JWT 인증

  3. 3

    openCV python을 사용하여 텍스트 문서에서 워터 마크를 제거하는 방법은 무엇입니까?

  4. 4

    C # 16 진수 값 0x12는 잘못된 문자입니다.

  5. 5

    Excel : 합계가 N보다 크거나 같은 상위 값 찾기

  6. 6

    오류 : MSB4803 : MSBuild의 .NET Core 버전에서 "ResolveComReference"작업이 지원되지 않습니다.

  7. 7

    R에서 Excel로 내보낼 때 CET / CEST 시간 이동이 삭제됨

  8. 8

    node.js + postgres : "$ 1"또는 그 근처에서 구문 오류

  9. 9

    확대 후 하이 차트에서 Y 축이 잘못 정렬 됨

  10. 10

    EPPlus에서 행 높이를 설정할 때 이상한 동작

  11. 11

    Ionic 2 로더가 적시에 표시되지 않음

  12. 12

    MS Access 부분 일치 2 테이블

  13. 13

    EPPlus에서 병합 된 셀의 행 높이 자동 맞춤

  14. 14

    ExecuteNonQuery- 연결 속성이 초기화되지 않았습니다.

  15. 15

    ResponseEntity를 사용하고 InputStream이 닫히는 지 확인하는 적절한 스트리밍 방법

  16. 16

    PrematureCloseException : 연결이 너무 일찍 닫혔습니다.

  17. 17

    오류 : "const wchar_t *"유형의 인수가 "WCHAR *"유형의 매개 변수와 호환되지 않습니다.

  18. 18

    Java에서 이미지를 2 색으로 변환

  19. 19

    overflow-y를 사용할 때 스크롤 버벅 거림 줄이기 : scroll;

  20. 20

    Java에서 Apache POI를 사용하여 테이블 크기 및 간격을 단어로 설정하는 방법

  21. 21

    Android Kotlin은 다른 활동에서 함수를 호출합니다.

뜨겁다태그

보관