파이썬에서 새로운“작업 완료”QgsMessageBar를 해결하는 방법?


12

지난 몇 달 동안 QGIS 개발이 얼마나 큰 걸음을 내딛었는지 정말 놀랍습니다. 새로운 아이콘 세트, 개선 된 인쇄 작곡가 및 QGIS 2.0에서 볼 수있는 더 많은 변경 사항이 정말 훌륭합니다!

다른 많은 멋진 개선 사항들 중에서도 멋진 파란색 작업 표시 줄이있어 매우 매력적입니다. 텍스트 내용 : 저장 완료 : 벡터 파일로 내보내기 완료

스크립트 및 플러그인에 대해이 막대를 파이썬으로 처리 할 수 ​​있습니까 (예 : 계산 완료 후 작은 메시지를 표시하는 경우)? 많은 QGIS 개발자가이 Q & A 사이트를 방문한다고 생각하기 때문에이 질문을하고 싶습니다.

추신 : 바는 QGIS 개발자 및 일부 작업에서만 볼 수 있습니다.

답변:


14

그것은 확실하다:

iface.messageBar().pushMessage("Header","MessageBody", QgsMessageBar.WARNING, 2)

마지막 인수는 초 단위의 시간 초과이며, 제공되지 않으면 사용자가 닫을 때까지 유지됩니다.

메시지 표시 줄에 자신 만의 컨트롤을 추가 할 수도 있습니다.

widget = iface.messageBar().createMessage("Test","Testing")
combo = QComboBox()
widget.layout().addWidget(combo)
iface.messageBar().pushWidget(widget, QgsMessageBar.WARNING)
combo.addItems("ASD")

여기에 이미지 설명을 입력하십시오

http://www.qgis.org/api/classQgsMessageBar.html#a0b305c7215d75243b4237c299f0f7723


@Nathan QComboBox 대신 QProgressBar를 사용하고 있습니다. 진행률 표시 줄 레이블을 오른쪽에 정렬 할 수 없습니다. 현재 진행률 표시 줄의 중간에 % 기호가 표시됩니다.
venkat

@venkat는 진행률 표시 줄의 스타일입니다. 그것을 변경하는 방법에 대한 Qt 스타일 시트를 보거나 레이블 속성이있을 수 있습니다.
Nathan W

@Nathan 나는 이미 이것에 관한 질문을 제기했지만 지금까지 아무런 대답도 얻지 못했습니다. 친절 하게이 링크를 확인하십시오. 스크린 샷과 소스 코드로 설명했습니다. stackoverflow.com/questions/16434215/…
venkat

@venkat 님이 답해 주셨습니다
Nathan W
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.