Qt - 탐색 표시 줄 의 실현
                                            
 14163 단어  Qt
                    
이 블 로 그 는 다음 과 같이 시작 합 니 다.http://blog.csdn.net/lys211
전재 출처 를 밝 혀 주 십시오
sssooonnnggg 의 [사용자 정의 트 리 구조 내 비게 이 션 표시 줄] 을 보 았 습 니 다.
http://www.qtcn.org/bbs/read-htm-tid-58274.html
그래서 QT 의 TreeWidget 컨트롤 을 고 쳐 서 이런 효 과 를 실현 할 수 있 을 까 하 는 생각 이 들 었 습 니 다. 최근 에 시간 을 내 서 만 들 었 습 니 다. 초기 효 과 는 다음 과 같 습 니 다.
 
  시간 적 인 이유 로 UI 를 더 이상 조정 하고 싶 지 않 습 니 다.
원본 과 비교 하고 싶 은 것 은 문장 첫머리 url 에서 뛰 어 보 세 요.
이것 은 TreeWidget 으로 이 루어 진 네 비게 이 션 바 입 니 다. Qt 디자이너 에 TreeWidget 의 속성 을 설정 합 니 다.
 
     
  색상 등 은 QSS 로 수정 합 니 다.
네 비게 이 션 바 의 이벤트 응답 은 clicked (index) 를 사용 할 수 있 습 니 다.
  
  void MainWindow::on_treeWidget_clicked(const QModelIndex &index)
  {
      int nTopIndex = index.parent().row();
      if (-1 == nTopIndex)
      {
          QTreeWidgetItem *item = treeWidget->currentItem();
          item->setExpanded(!item->isExpanded());
          return ;
      }
   
      int nCurrenIndex = index.row();
      int nIndex = nTopIndex<<3|nCurrenIndex;
      qDebug()<<"nTopIndex:"<<nTopIndex<<"nCurrenIndex:"<<nCurrenIndex<<"nIndex:"<<nIndex;
      this->setWindowTitle(index.data().toString());//        title       
      switch (nIndex) {//    clicked,       
      case 0://   [e1    ]    ,    
          stackedWidget->setCurrentIndex(0);
          break;
   
      case 8:
          stackedWidget->setCurrentIndex(0);
          break;
      case 9:
          stackedWidget->setCurrentIndex(0);
          break;
      case 10:
          stackedWidget->setCurrentIndex(0);
          break;
   
      case 16:
          stackedWidget->setCurrentIndex(0);
          break;
      case 17:
          stackedWidget->setCurrentIndex(0);
          break;
      case 18:
          stackedWidget->setCurrentIndex(0);
          break;
   
      case 24:
          stackedWidget->setCurrentIndex(0);
          break;
      case 25:
          stackedWidget->setCurrentIndex(0);
          break;
      case 26:
          stackedWidget->setCurrentIndex(0);
          break;
   
      case 32:
          stackedWidget->setCurrentIndex(1);
          break;
      default:
          break;
      }
  }
  
2015 년 07 월 19 일 보충:
처음에 이 조련 사의 프로젝트 는 CSDN 에 업로드 되 었 습 니 다.
http://download.csdn.net/detail/lys211/8913337  
  
                              
                        
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Qt로 문자와 이미지의 혼합 텍스트 그리기텍스트를 그리려면 QPainter::drawText 함수를 사용하지만 텍스트와 동시에 이미지 (아이콘 등)를 함께 그리기를 원합니다. QLabel와 QPushButton는 이미지와 텍스트를 표시하는 기능을 가지고 있...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.