私はselectクエリ(SQLエンジンとしてsqliteを使用します)を実行し、結果をQTextEditにロードする必要があるプロジェクトで作業しています(グラフィカルインターフェイスにQTを使用しています)。 「質問の結果をQTextEditパネルに追加するにはどうすればいいですか?
//Callback function to print the query to the console
int db_files::CallBack(void *notUsed, int argc, char **argv, char **azColName) {
for(int i = 0; i<argc; i++) {
printf("%s : %s\n", azColName[i], argv[i] ? argv[i] : "NULL");
}
std::cout << "\n";
return 0;
}
//Function where I open the database and run the query
void custHandler::show_all() {
rc = sqlite3_open("database.db", &db);
if(rc != SQLITE_OK) {
sqlite3_close(db);
exit(1);
}
sqlCust = "SELECT * FROM DB";
rc = sqlite3_exec(db, sqlCust, CallBack, 0, &ErrMsg);
if (rc != SQLITE_OK) {
exit(1);
}
sqlite3_free(ErrMsg);
sqlite3_close(db);
}
は、たぶん私は、コールバック関数で動作する必要があるが、私はドン:今私は、次のコードを書きました(私は、私はQTextEditに結果を追加する必要がある部分で立ち往生)については
どのように...誰かが私にそれを説明することができます知っている?
EDIT:
int sqlite3_exec( sqlite3*, /* An open database */ const char *sql, /* SQL to be evaluated */ int (*callback)(void*,int,char**,char**), /* Callback function */ void *, /* 1st argument to callback */ char **errmsg /* Error msg written here */ );
ご覧のとおり:私は、私は通常ui->txtShow.insertPlainText("text");
簡単に読むことができるように、インデントでコードを適切にフォーマットしてください。さらに、QTextEditはコードのどこにもありませんので、どこに追加するのかわかりません。 QtextEditであなたがプリントしたものをターミナルに追加したいと思うのは正しいですか? – apalomer