回调函数调整

This commit is contained in:
13038267101 2022-12-15 20:16:43 +08:00
parent b11649ea9e
commit d3a3560afa
4 changed files with 26 additions and 19 deletions

View File

@ -2,6 +2,7 @@
#include "sane/sane_ex.h"
#include "ui_helper.h"
#include "test_base.h"
class hgscanner :public ui_helper
{
public:
@ -12,7 +13,6 @@ public:
virtual int register_sane_callback(sane_callback cb, void* param);
virtual int unregister_sane_callback(sane_callback cb);
virtual int io_control(unsigned long code, void* data, unsigned* len);
static int sane_ex_callback(SANE_Handle hdev, int code, void* data, unsigned int* len, void* param);
sane_callback cb_;
private:
SANE_Handle devHandle_;

View File

@ -7,7 +7,6 @@
#include "dialog_changepwd.h"
#include "dialog_accountmanage.h"
#include "dialog_uploadcfgfile.h"
#include "hgscanner.h"
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
@ -60,6 +59,7 @@ void MainWindow::Init()
SANE_Int v = 0;
sane_init_ex(&v, sane_ex_callback, this);
Sleep(500);
}
void MainWindow::Deinit()
@ -111,6 +111,11 @@ int MainWindow::sane_ex_callback(SANE_Handle hdev, int code, void *data, unsigne
break;
}
if (!hdev)
{
return -1;
}
p->hg->cb_(hdev, code, data, len, NULL);
return 0;
}
@ -135,12 +140,12 @@ std::vector<std::string> MainWindow::getDevices()
void MainWindow::on_sane_dev_arrive(QString devName)
{
// SANE_Status ret = sane_open(devName.toStdString().c_str(), &m_handle);
SANE_Status ret = sane_open(devName.toStdString().c_str(), &m_handle);
// ui_helper* helper;
// hgscanner* hg = new hgscanner(m_handle);
// helper = dynamic_cast<hgscanner*>(hg);
// func_test_go(L"test-31", L"null", helper);
ui_helper* helper;
this->hg = new hgscanner(m_handle);
helper = dynamic_cast<hgscanner*>(this->hg);
func_test_go(L"test-31", L"null", helper);
}
void MainWindow::on_sane_dev_remove(QString devName)
@ -269,8 +274,8 @@ QString MainWindow::getLogInfo(HGResult ret)
return str;
}
void MainWindow::on_act_upload_triggered()
{
Dialog_uploadCfgFile dlg(m_pdtToolDbuserMgr, this);
dlg.exec();
}
//void MainWindow::on_act_upload_triggered()
//{
// Dialog_uploadCfgFile dlg(m_pdtToolDbuserMgr, this);
// dlg.exec();
//}

View File

@ -7,6 +7,8 @@
#include <QSplitter>
#include "HGPdtToolDb.h"
#include "sane/sane_ex.h"
#include "hgscanner.h"
QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACE
@ -20,7 +22,7 @@ class MainWindow : public QMainWindow
public:
MainWindow(QWidget *parent = nullptr);
~MainWindow();
hgscanner* hg;
void Init();
void Deinit();
static QString getLogInfo(HGResult ret);
@ -56,7 +58,7 @@ private slots:
void on_act_close_triggered();
void on_act_upload_triggered();
/* void on_act_upload_triggered();*/
private:
QSplitter *m_top_splitter;

View File

@ -151,13 +151,13 @@
<PrecompiledHeader>NotUsing</PrecompiledHeader>
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<AdditionalIncludeDirectories>../include/x64;../../../sdk/include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AdditionalIncludeDirectories>../include/x64;../../../sdk/include;C:\Users\modehua\Desktop\sane\code_app\build\windows\x64\Debug;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<EnableUAC>false</EnableUAC>
<AdditionalLibraryDirectories>../lib/x64;../../../sdk/lib/win/x64/Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<AdditionalLibraryDirectories>../lib/x64;../../../sdk/lib/win/x64/Release;C:\Users\modehua\Desktop\sane\code_production\db\HGPdtToolDb\x64\Debug;C:\Users\modehua\Desktop\sane\code_app\build\windows\x64\Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<AdditionalDependencies>libmysql.lib;HGBase.lib;%(AdditionalDependencies)</AdditionalDependencies>
<ModuleDefinitionFile>HGPdtToolDb.def</ModuleDefinitionFile>
</Link>