diff --git a/examples/proto_debuger/base_form.cpp b/examples/proto_debuger/base_form.cpp index 2089a95f..279489e9 100644 --- a/examples/proto_debuger/base_form.cpp +++ b/examples/proto_debuger/base_form.cpp @@ -40,8 +40,10 @@ LRESULT BasicForm::HandleMessage(UINT uMsg, WPARAM wParam, LPARAM lParam) if (uMsg == WM_ADD_UART_CLOSE) { wprintf(L"close %s\r\n", ((wstring*)wParam)->c_str()); mRightShow->SetVisible(false); + mRightShow = nullptr; mRightSide->SetAutoDestroy(true); - mUartForm[*(wstring*)(wParam)] = nullptr; + mRightSide->RemoveAll(); + mUartForm.erase(*(wstring*)(wParam)); int cnt = mMonitor->GetRootNode()->GetChildNode(0)->GetChildNodeCount(); ui::TreeNode* p = nullptr; for (int i = 0; i < cnt; i++) { @@ -61,6 +63,7 @@ LRESULT BasicForm::HandleMessage(UINT uMsg, WPARAM wParam, LPARAM lParam) PortNum = PortNum * 10 + (comname[i] - L'0'); } SerialPort::ClosePort(PortNum); + delete mRightShow; } if (uMsg == WM_ADD_UART_RECVDATA) { printf("WM_ADD_UART_RECVDATA"); diff --git a/examples/proto_debuger/udp_form.cpp b/examples/proto_debuger/udp_form.cpp index 905ecf86..4fb6df93 100644 --- a/examples/proto_debuger/udp_form.cpp +++ b/examples/proto_debuger/udp_form.cpp @@ -50,8 +50,8 @@ void UdpForm::Init() { ui::ChildBox::Init(); ui::Label* m_label_1 = dynamic_cast(FindSubControl(L"uart_info_label")); - ui::RichEdit* m_rich_edit_1 = dynamic_cast(FindSubControl(L"uart_recv_eidt")); - ui::RichEdit* m_rich_edit_2 = dynamic_cast(FindSubControl(L"lua_script")); + m_rich_edit_1 = dynamic_cast(FindSubControl(L"uart_recv_eidt")); + m_rich_edit_2 = dynamic_cast(FindSubControl(L"lua_script")); ui::RichEdit* m_rich_edit_3 = dynamic_cast(FindSubControl(L"uart_send_edit")); ui::Button* m_button_1 = dynamic_cast(FindSubControl(L"btn_send_data")); ui::Button* m_button_2 = dynamic_cast(FindSubControl(L"btn_close_uart")); diff --git a/examples/proto_debuger/udp_script.lua b/examples/proto_debuger/udp_script.lua new file mode 100644 index 00000000..a32c21d1 --- /dev/null +++ b/examples/proto_debuger/udp_script.lua @@ -0,0 +1 @@ +require("string") local file = io.open("writetest.txt", "w+") function OnUdpData(data) if nil == file then print("open file writetest.txt fail") end file:write("OnUartData from lua " .. data.."\r\n") file:flush() showdata("OnUartData from lua " .. data.."\r\n") end -- function OnNetworkData(addr,data,len) -- print(addr,data,len) -- print(len) -- print(data) -- -- showbuffer("recv network data: " .. data .. "\r\n") -- end -- function OnUdpData(addr,data,len) -- print(addr,data,len) -- -- showbuffer("recv data: ",data,"\r\n") -- end -- function OnNewClient(addr,port,sock) -- print(addr,port,sock) -- -- showbuffer("tcp connected: " -- -- ..addr.."\r\n"..port.."\r\n"..sock.."\r\n") -- end -- function OnClientLeave(addr,port,sock) -- print(addr,port,sock) -- -- showbuffer("tcp close: " -- -- ..addr.."\r\n"..port.."\r\n"..sock.."\r\n") -- end \ No newline at end of file