PyQt5 QTreeView çok büyük geliyor

Arkadaşlar PyQT ile geliştirdiğim text editorunde (Pyqt5 QTextEdit vertical scrollbar nasıl eklerim?)
başka bir sorun çıktı ben açılı olan projenin folderını göstermek için bir widget kullandım ama nedense bu widget textedit widgetinden daha büyük geliyor…
umarım anlatabilmişimdir ama fotoyla daha iyi anlayacağınızı düşünüyorum


elle ayarlanabiliyor(splitter) ama genede başlangıçta kötü duruyor


elle ayarlanınca böyle olabiliyor dediğim gibi


kodlar:

        self.splitter = QtWidgets.QSplitter(QtCore.Qt.Horizontal)
        self.splitter.setStretchFactor(1, 1)
        self.splitter.setSizes([150, 150])
    def Setup_Folder_Tree(self):

        self.model = QtWidgets.QFileSystemModel()
        self.model.setRootPath("")

        self.tree = QtWidgets.QTreeView()

        self.tree.setModel(self.model)
        self.tree.setRootIndex(self.model.index(os.path.dirname(__file__)))
        self.tree.setAnimated(True)
        self.tree.setIndentation(10)
        self.tree.setSortingEnabled(True)


   
        self.splitter.addWidget(self.tree)
        self.tabWidget = QtWidgets.QTabWidget(self.centralwidget)
        self.tabWidget.tabCloseRequested.connect(lambda index: self.tabWidget.removeTab(index))
        self.tabWidget.setTabsClosable(True)

        self.splitter.addWidget(self.tabWidget)

ilk konumdaki problemimi tam çözemedim ama iki problemimide iki saattir gerek qt docsunda gerek diğer sitelerde araştırıyorum ingilizcemin yettiği kadarıyla ama bulamadım!!!

datemodified kolon ve satırının uzunluğunu azaltmayı denedin mi?

1 Beğeni

bu seferde sadece name var ama genede aynı

yaptım oldu ama şimdide beğendiğim başka bir özellik gidiyoe splitter yani kişinin o pencereyi istediği gibi düzenleyebilmesi şimdi sadece belli bir widthde

seni tatmin etmeyi çok isterdim, elimden bu kadarı geliyor. Kodların tamamını atarsan belki faydam olur.

başardımmm yaptım tek yaptığım setMaximumWidth niteliğini kullanmaktı
saol genede brom <3

1 Beğeni

rica ederim. yine de kodları istiyorum (:slight_smile:

atarım yeterki iste :smile:

# -*- coding: utf-8 -*-

from PyQt5 import QtCore, QtGui, QtWidgets


class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        MainWindow.setWindowTitle("Pyroditor")
        MainWindow.resize(600, 500)
        self.centralwidget = QtWidgets.QWidget(MainWindow)

        self.gridLayout = QtWidgets.QGridLayout(self.centralwidget)

        self.splitter = QtWidgets.QSplitter(QtCore.Qt.Horizontal)
        self.splitter.setStretchFactor(1, 1)
        self.splitter.setSizes([150, 150])

        self.gridLayout.addWidget(self.splitter)

        self.Setup_Menu()

        self.Setup_Folder_Tree()

        self.tabWidget = QtWidgets.QTabWidget(self.centralwidget)
        self.tabWidget.tabCloseRequested.connect(lambda index: self.tabWidget.removeTab(index))
        self.tabWidget.setTabsClosable(True)

        self.splitter.addWidget(self.tabWidget)

        
        MainWindow.setCentralWidget(self.centralwidget)

        
        

    def Setup_Menu(self):

        New_action = QtWidgets.QAction("New",MainWindow)
        New_action.setShortcut('Ctrl+N')
        New_action.triggered.connect(lambda:self.add_tab("untitled"))


        OpenFile_action = QtWidgets.QAction("Open File...",MainWindow)
        OpenFile_action.setShortcut('Ctrl+O')
        OpenFile_action.triggered.connect(self.open_file)


        OpenFolder_action = QtWidgets.QAction("Open Folder...",MainWindow)
        OpenFolder_action.triggered.connect(self.open_folder)


        #***********Open recent file**********

        OpenRecent_action = QtWidgets.QAction("Open Recent",MainWindow)


        #*************************************



        #++++++++++++++++++++++++++++++++++
        mainMenu = MainWindow.menuBar()
        fileMenu = mainMenu.addMenu('File')
        editMenu = mainMenu.addMenu('Edit')
        searchMenu = mainMenu.addMenu('Find')
        viewMenu = mainMenu.addMenu('View')
        RunMenu = mainMenu.addMenu('Run')
        toolsMenu = mainMenu.addMenu('Tools')
        helpMenu = mainMenu.addMenu('Help')
        #++++++++++++++++++++++++++++++++++
        fileMenu.addAction(New_action)
        fileMenu.addAction(OpenFile_action)
        fileMenu.addAction(OpenFolder_action)
        fileMenu.addAction(OpenRecent_action)
        fileMenu.addSeparator()

    
    


    def Setup_Folder_Tree(self):

        self.model = QtWidgets.QFileSystemModel()
        self.model.setRootPath("")

        self.tree = QtWidgets.QTreeView()

        self.tree.setModel(self.model)
        for indx in range(1, self.tree.model().columnCount()):
            self.tree.header().hideSection(indx)
        self.tree.setRootIndex(self.model.index(os.path.dirname(__file__)))
        self.tree.setMaximumWidth(200)
        self.tree.setAnimated(True)
        self.tree.setIndentation(10)
        self.tree.setSortingEnabled(True)


        #++++++++++++++++++GONNA+FIX+++++++++++++++++++++++++++
        #self.tree.hide()# kişi viewden halledicek checkbutton koyarım ve eğer kayıtlı folder yoksa gene hide
        #++++++++++++++++++++++++++++++++++++++++++++++++++++++

        self.splitter.addWidget(self.tree)

    def add_tab(self,title,ext=""):
        tab = QtWidgets.QWidget()
        horizontalLayout = QtWidgets.QHBoxLayout(tab)
        textEdit = QtWidgets.QPlainTextEdit(tab)
        horizontalLayout.addWidget(textEdit)
        self.tabWidget.addTab(tab, "".join(title+ext))


        
    def open_file(self):
        pass

    def open_folder(self):
        pass

    def save(self):
        pass

    def save_as(self):
        pass


if __name__ == "__main__":
    import sys
    import os
    app = QtWidgets.QApplication(sys.argv)
    MainWindow = QtWidgets.QMainWindow()
    ui = Ui_MainWindow()
    ui.setupUi(MainWindow)
    MainWindow.show()
    sys.exit(app.exec_())

istersen kodlardan kendine fikir edinip kendi text editorunude geliştirebilirisin bro

daha bitirmedim çok eksiği var ama tamamlıyacağım

python 3.5 sürümünü kullanıyorsun dimi

Python 3.8.3 sürümü…

@tevhidulvahset
Fikirlerini ve önerilerini belirtmeni istiyorum kodlar karşılığında :smile:

1 Beğeni

estağfurullah. o nasıl söz öyle :slight_smile:

1 Beğeni

hatta ekleyebilirsen vertical scrollbarı ekleyebilirsin çok uğraştırdı :frowning:

tarih kısmını çıkarttım ama dosya ismi dosya uzunluğu ve dosya tipini bıraktım

bi terslik var kodları bende çalıştırdığım zaman aldığım ekran seninki gibi olmuyor

karşıma gelen ekran bu

@tevhidulvahset ctrl n yap
açılı dosya yok ki :smile:

şuan bu yazdığın kod kadarıyla neler yapabiliyorum?