แถบค้นหา Qt TableView

มีวิดเจ็ต UI สำหรับแถบค้นหาในมุมมองตารางหรือไม่ ฉันหมายถึงบางอย่างเช่นนี้ (ภาพหน้าจอไม่ใช่วิดเจ็ต Qt แต่แสดงให้เห็นว่าควรมีลักษณะอย่างไร)

แถบค้นหา jqGrid

ฉันเข้าใจว่า QSortFilterProxyModel รองรับการกรอง นั่นคือด้านโมเดล สิ่งที่ฉันกำลังมองหาคือองค์ประกอบ UI ที่เกี่ยวข้องในด้านมุมมอง หรือฉันต้องเขียนมันด้วยตัวเอง?


person Horst Walter    schedule 21.12.2014    source แหล่งที่มา
comment
ฉันไม่คิดว่าจะเป็นไปได้กับสินค้าที่มีอยู่ ฉันจะสร้างคลาสที่ได้รับ QWidget แบบกำหนดเองสำหรับส่วนหัวซึ่งมี QLabel และ QLineedit ในเค้าโครง   -  person Bowdzone    schedule 21.12.2014


คำตอบ (1)


คุณสามารถแทรกแถวใน tableView ของคุณด้วย model ที่คุณใช้อยู่ได้

model->insertRow(0); //inserts row to the top

จากนั้นใช้ tableView->setItemDelegateForRow(int row, QAbstractItemDelegate * delegate);//make a lineEditDelegate

person Cold Cerberus    schedule 03.02.2016
comment
ใช่ ฉันมีความคิดแบบเดียวกัน ปัญหาคือฉันต้องเพิกเฉยต่อแถวแรกสุดจากการดำเนินการทั้งหมด เช่น การเรียงลำดับ การอัปเดต ฯลฯ ดังนั้นการดำเนินการของโมเดลทั้งหมดจึงต้องยอมรับดัชนีแถว +1 - person Horst Walter; 03.02.2016
comment
โอ้ โอเค ฉันเห็นแล้ว คุณสามารถสร้าง lineEdits และช่องทำเครื่องหมายแยกกัน จากนั้นจึงยึดตำแหน่ง (โดยยึด x ไว้ซึ่งกันและกัน และ y ยึดไว้ใต้ส่วนหัวแนวนอนของ tableview) ตั้งค่าความสูงให้ใกล้เคียงกับ ui->tableView->verticalHeader()->height() ตั้งค่าความกว้างให้คล้ายกับคอลัมน์ที่เกี่ยวข้อง ตั้งค่าความสูงของ row(0)เท่ากับ verticalHeader()->height() x 2 จากนั้นสุดท้ายตั้งค่าข้อความ/เนื้อหาของแถว (0) ให้อยู่ด้านล่างสุด (ฉันไม่แน่ใจว่าคุณเรียกมันว่าอย่างไร แต่คุณเข้าใจแล้ว 555) - person Cold Cerberus; 03.02.2016