Sto provando a creare un QTableView che può essere ingrandito e ridotto come in Excel.
Una domanda simile è stato chiesto qui: Zooming function on a QWidgetQTableView Zoom avanti/indietro
Tuttavia, sono sottoclasse il QTableView in PyQt e non C così reimplementare l'intero metodo paintEvent è un po 'evoluto. Il codice sorgente per questo è un po 'complesso: https://qt.gitorious.org/qt/tiittane-qt/source/bdd4a9149789f60974603e1f7621d51378f0a108:src/gui/itemviews/qtableview.cpp#L1282
Sto cercando di vedere se ci sono altre opzioni valide per avere un TableView in grado di zoomare. Il mio primo tentativo è stato quello di impostare le dimensioni del carattere, quindi ho realizzato che ogni colonna e le larghezze delle righe avrebbero dovuto ridimensionarsi, il che può rallentare. Poi realizzato cambiando il carattere cambierebbe la stampa. Non sembrava una soluzione elegante. Cambiare la scala del pittore prima della verniciatura sembra la soluzione più elegante, ma dovresti re-implementare e tradurre un bel po 'di codice in Python per farlo. Mi chiedo se ci sono altri ganci per fare questo.
Grazie
hai avuto alcun successo con questo, alla fine? potresti condividere la tecnica su cui ti sei stabilito? Grazie! – simon
Alla fine l'attività è stata spostata in modo prioritario in modo significativo dove non ha funzionato su di esso più. A un certo punto lo rivisiterò ma non so quando. Ci sono alcune complessità e comportamenti strani con l'utilizzo della scena grafica, quindi non sono sicuro che sarà più facile che reimplementare il metodo paint alla fine – TexasRaptor
Ho chiesto un paio di giorni fa, le mie abilità di ricerca sono pessime indovinate ... http: //stackoverflow.com/questions/30601123/zooming-a-view-in-pyqt. Penso che potrei finire semplicemente cambiando letteralmente la dimensione del carattere e poi ridimensionandone il contenuto, che fa schifo, ma vabbè ... – neuronet