//--------------------------------------------------------------------------- void __fastcall TMainForm::N5Click(TObject *Sender){ AnsiString sql; sql.printf("delete from spis2 where id=%d",(int)Tree->Selected->Data); try{ DM->qInsert->SQL->Clear(); DM->qInsert->SQL->Add(sql); DM->qInsert->ExecQuery(); DM->dsSpis->FullRefresh(); TreePaint(); }catch(const Exception &E){ Application->MessageBox("Удалите сначала книги.", "Ошибка", MB_OK); } }
//--------------------------------------------------------------------------- //Если форма отображается впервые вызывает функцию генерации древа. //Если вход не под администратором прячет кнопки доступа к справочникам. void __fastcall TMainForm::FormShow(TObject *Sender){ if(!create){ TreePaint(); create=1; } if(Login->Tag==0){ ToolButton2->Visible=false; ToolButton3->Visible=false; ToolButton4->Visible=false; ToolButton5->Visible=false; N1->Visible=false; N3->Visible=false; } }
LRESULT CALLBACK TreeWndProc(HWND hwnd,UINT msg,WPARAM wParam,LPARAM lParam) { switch (msg) { case WM_PAINT: return TreePaint(hwnd); break; case WM_LBUTTONDOWN: selectedPerson = FindPersonFromCoords(GET_X_LPARAM(lParam), GET_Y_LPARAM(lParam)); InvalidateRect(hwndInfobox, NULL, 0); InvalidateRect(hwndTree, NULL, 0); break; default: return DefWindowProc(hwnd,msg,wParam,lParam); } return 0; }
//--------------------------------------------------------------------------- //Если в таблицах которые используються для построения древа были изменения //вызывается функция перерисовки древа void __fastcall TMainForm::FormActivate(TObject *Sender){ if(Tree->Tag==-1){ TreePaint(); Tree->Tag=0; } }