2014-01-16 156 views
0

我想加載一些從目錄讀取的文件名並將其放入QListWidget用QListWidget顯示輸出

雖然它的工作原理,有2個問題... 例如,第一個3個項目被稱爲:apple, pear and banana

而不是在3行顯示的是我在ListWidget爲水平的信息,我的是顯示在多行,每個字母佔據一排...

def fillJobsList(self): 
for shot in shots: 
self.jobShotsList.addItems(str(shot)) 

jobShotsList是我QListWidget的名稱。

我的第二個問題是我無法清除我的QListWidget中的內容。

self.fillJobsList.clear() 

這是我使用的代碼,但是當我執行它,它甚至無法顯示導致錯誤的內容...

有人能指導我?

+0

你的拼寫錯誤,你錯過了's ** from self.jobShotsList.clear()':) – qurban

回答

0

這個清單是什麼?刪除str

self.jobShotsList.addItems(shot) 

我認爲這應該工作。

+0

原來我必須輸入:self.jobShotsList.addItems(鏡頭)而不是鏡頭,因爲addItems的QString ... – yan

0
  1. addItems (self, QStringList labels)需要串的名單,但你通過了str(shot)給它,這也是一個迭代。因此,請在for循環中使用.addItems(yourItemList).addItem(yourItem)

  2. 當你使用.clear得到錯誤時,你能粘貼回溯嗎?

更新: 就像@qurban提到的,你錯過了你的代碼s,它jobShotsList,不jobShotList。在這種情況下,您最好使用代碼自動完成的IDE或文本編輯器進行編碼。

+0

我已經解決了第一部分的問題,但至於.clear,我仍然遇到問題。 錯誤信息是'功能'對象沒有屬性'清' – yan

+0

@ user3198579,回答更新 – zhangxaochen

+0

嗨,對不起,我應該讓我的代碼更清晰。關於你提到的那個,確實也有這個問題......而且在我的信息中也有一個錯字... 我正在嘗試使fillJobsList.clear(),但它根本不起作用 def fillJobsList(self): 拍攝鏡頭: self.jobShotsList.addItems(鏡頭) – yan