01/10/2018, 01:01

Xử Lý file Excel và đọc ảnh trong QT

Bây giờ mình làm app bằng QT có giao diện như hình! Yêu cầu là:
mình bấm vào button LoadAnh sẽ hiện ảnh (đã làm được) còn bấm vào nút ThongTin thì nó sẽ load thông tin lên biết thông tin được đọc từ file excel! Mọi người cho mình hướng giải quyết. Cảm ơn mọi người

Đỗ Trung Quân viết 03:08 ngày 01/10/2018

Ở đây anh hiểu theo 2 trường hợp.
Trường hợp 1. Em cần lấy thông tin từ ảnh của nhân viên

Em có thể đặt tên ảnh với định dạng nào đó.

Ví dụ. do-trung-quan-id-1.jpg. 

Giá trị id = 1 sẽ là khóa của nhân viên này và được lưu trong excel.
Viết 1 hàm

private Employee getEmployeeByID(int id){ //id get từ ảnh
    //get information from excel
}

Sau khi lấy được thông tin em load lên form.

Trường hợp 2. Load ảnh và lấy thông tin riêng biệt
Đọc thông tin từ excel

qDebug() << "Open excel.." << endl;
QSqlDatabase excel = QSqlDatabase::addDatabase("QODBC");
excel.setDatabaseName("DRIVER={Microsoft Excel Driver (*.xls)};DBQ=" + file);

if(excel.open())
{
    int cont = 0;
    QSqlQuery query("select * from [Sheet1"  + "$]");
    while(query.next())
    {
       QString column1= query.value(0).toString();
       QString column2= query.value(1).toString();
       QString column3= query.value(2).toString();
       QString column4= query.value(3).toString();
       QString column5= query.value(4).toString();

        qDebug("('', %d, %d, %d, \"%s\"),",
               column2.toInt(),
               column3.toInt(),
               column4.toInt(),
               column5.toStdString().c_str());

        cont++;
    }

    QString reg = "Regs: " + cont;
    qDebug() << reg;

}
else
{
    qDebug() << "Can't open file (Excel)" << endl;
}

Nguồn Read Excel QT

Septiceye Jack viết 03:02 ngày 01/10/2018

cho em hỏi ngu chỗ excel.setDatabaseName(“DRIVER={Microsoft Excel Driver (*.xls)};DBQ=” + file); này là mình đọc file hay là mình tạo file vậy ạ! và “file” = đường link file cần đọc đúng ko ạ!

Bài liên quan
0