因此,這裏是我的複雜的問題,我希望你知道答案:)連接QML和Qt
我開發的應用程序爲Android使用Qt Necessitas。 我爲GUI製作了.ui
文件,我沒有找到我真正想要的東西,所以很多人都提出了QML,因爲它非常動態並提供了很多選項。
但是問題在於我之前從未使用過QML。
我需要一點幫助,只需要很少的功能,所以我可以知道如何做到以後。
例如。這是我的功能,我稱之爲使用post方法從數據庫讀取數據並調用php腳本。
void MainWindow::Citanje_korisnika() //read users
{
init();
QUrl params;
params.addQueryItem("action","Citanje_korisnika");
QByteArray data;
data.append(params.toString());
data.remove(0,1);
QNetworkRequest request;
request.setUrl(url);
request.setHeader(QNetworkRequest::ContentTypeHeader,
QVariant("application/x-www-form-urlencoded"));
reply = manager->post(request, data);
connect(reply, SIGNAL(downloadProgress(qint64, qint64)),this, SLOT(updateDataTransferProgress(qint64,qint64)));
}
所以我的問題是如何調用從QML代碼這個功能呢?例如,當用戶按下按鈕?
之後,我有這個功能,使我的一切都進入我的形式。
void MainWindow::Pokazi(QList< QMap<QString,QString> >& osobe) //show { i_max=osobe.count(); osobe_next=osobe; osoba = osobe.at(0); //trenutni_id=osoba["id"]; ui->label_ID->setText(osoba["id"]); ui->line_ime->insert(osoba["ime"]); ui->line_prezime->insert(osoba["prezime"]); ui->line_telefon->insert(osoba["broj"]); ui->line_adresa->insert(osoba["adresa"]); }
因此,這是我要顯示我的名單上的所有人員。
是否有可能將上面的QList加載到QML ListView中看起來像這樣? 我可以動態填充它嗎?
ListModel { ListElement { name: "Bill Smith" number: "555 3264" } ListElement { name: "John Brown" number: "555 8426" } }
這與已經插入的值僅作爲示例。我的問題是如何使它從qml代碼動態填充?
而且我想我的名單看起來像在這個環節上第二個畫面:http://doc.qt.nokia.com/4.7-snapshot/qml-listview.html
我設法使它看起來像這一點,但問題是,我想動態加載我的數據裏面,我不希望它預定。
如果您需要更多的代碼,請告訴我。