2014-10-13 30 views
6

Tôi có một phần mã HTML, hiển thị bảng nhỏ. Trong trình duyệt nó trông giống như trong hình: HTML TableĐịnh dạng HTML trong Văn bản QML

Nhưng khi tôi muốn hiển thị nó trong Text QML (trong đó, theo các tài liệu, nên hỗ trợ HTML), tôi thấy:

HTML table in QML

(Orange hình chữ nhật là một phần của hình chữ nhật, đó là mẹ của mytext)

Text { 
    id: mytext 
    anchors.fill: parent 
    text: "<div><table border='1'><caption><h4>Test stats</h4>"+ 
    "</caption><tr bgcolor='#9acd32'><th/><th>Number1</th><th>Number2</th></tr> <tr><th>Line1</th>"+ 
     "<td> 0 </td> <td> 1 </td> </tr> <tr><th>Line2</th> <td> 0 </td> <td> 1 </td> </tr>"+ 
     "<tr><th>Line3</th> <td> 0 </td> <td> 0 </td> </tr> <tr><th>Line4</th> <td> 1 </td> <td> 0 </td> </tr>"+ 
     "<tr><th>Line5</th> <td> 1 </td> <td> 1 </td> </tr> <tr><th>Line6</th> <td> 1 </td> <td> 1 </td> </tr> </div>" 
} 

Vậy làm thế nào để hiển thị một cách chính xác bảng HTML này trong QML (QtQuick 2.0)? Có thể sử dụng WebView không?

Trả lời

8

add textFormat: Text.RichText

Text { 
    id: mytext 
    anchors.fill: parent 
    textFormat: Text.RichText 
    text: "<div><table border='1'><caption><h4>Test stats</h4>"+ 
    "</caption><tr bgcolor='#9acd32'><th/><th>Number1</th><th>Number2</th></tr> <tr><th>Line1</th>"+ 
     "<td> 0 </td> <td> 1 </td> </tr> <tr><th>Line2</th> <td> 0 </td> <td> 1 </td> </tr>"+ 
     "<tr><th>Line3</th> <td> 0 </td> <td> 0 </td> </tr> <tr><th>Line4</th> <td> 1 </td> <td> 0 </td> </tr>"+ 
     "<tr><th>Line5</th> <td> 1 </td> <td> 1 </td> </tr> <tr><th>Line6</th> <td> 1 </td> <td> 1 </td> </tr> </div>" 
} 
Các vấn đề liên quan