using System; using System.Drawing; using System.Windows.Forms; using MLL; using UI; namespace UI { public partial class NotasItensDetalhaPanel : FormularioModelo { private ModeloNotasItensDetalha _detalhe = new ModeloNotasItensDetalha(); private Panel pnlVeiculo, pnlMedicamento, pnlArma; public NotasItensDetalhaPanel() { this.Titulo = "Detalhamento Específico do Item"; this.Size = new Size(800, 550); MontarInterface(); } private void MontarInterface() { // Seleção de Tipo (Define qual painel mostrar) Label lblTipo = new Label { Text = "Tipo de Detalhamento:", Location = new Point(20, 25), AutoSize = true }; ComboBox cbTipo = new ComboBox { Location = new Point(150, 20), Size = new Size(200, 30), DropDownStyle = ComboBoxStyle.DropDownList }; cbTipo.Items.AddRange(new string[] { "NENHUM", "VEÍCULO", "MEDICAMENTO", "ARMAMENTO" }); cbTipo.SelectedIndexChanged += (s, e) => AlternarPaineis(cbTipo.Text); content.Controls.Add(lblTipo); content.Controls.Add(cbTipo); CriarPainelVeiculo(); CriarPainelMedicamento(); CriarPainelArmamento(); } private void CriarPainelVeiculo() { pnlVeiculo = new Panel { Location = new Point(10, 60), Size = new Size(760, 400), Visible = false }; AddInput(pnlVeiculo, "CHASSI", 10, 10, 250, 30); AddInput(pnlVeiculo, "ANO FAB.", 270, 10, 100, 30); AddInput(pnlVeiculo, "ANO MOD.", 380, 10, 100, 30); AddInput(pnlVeiculo, "POTÊNCIA", 10, 60, 100, 30); AddInput(pnlVeiculo, "CILINDRADAS", 120, 60, 120, 30); AddInput(pnlVeiculo, "COR (DENATRAN)", 250, 60, 200, 30); content.Controls.Add(pnlVeiculo); } private void CriarPainelMedicamento() { pnlMedicamento = new Panel { Location = new Point(10, 60), Size = new Size(760, 400), Visible = false }; AddInput(pnlMedicamento, "Nº LOTE", 10, 10, 200, 30); AddInput(pnlMedicamento, "QTD LOTE", 220, 10, 100, 30); AddInput(pnlMedicamento, "FABRICAÇÃO", 10, 60, 150, 30); AddInput(pnlMedicamento, "VALIDADE", 170, 60, 150, 30); AddInput(pnlMedicamento, "PREÇO MÁX. CONS. (VPMC)", 330, 60, 150, 30); content.Controls.Add(pnlMedicamento); } private void CriarPainelArmamento() { pnlArma = new Panel { Location = new Point(10, 60), Size = new Size(760, 400), Visible = false }; AddInput(pnlArma, "TIPO ARMA", 10, 10, 150, 30); // 0=Permitido, 1=Restrito AddInput(pnlArma, "SÉRIE ARMA", 170, 10, 200, 30); AddInput(pnlArma, "Nº CANO", 10, 60, 150, 30); var txtDesc = AddInput(pnlArma, "DESCRIÇÃO", 10, 110, 400, 60); txtDesc.Multiline = true; content.Controls.Add(pnlArma); } private void AlternarPaineis(string tipo) { pnlVeiculo.Visible = (tipo == "VEÍCULO"); pnlMedicamento.Visible = (tipo == "MEDICAMENTO"); pnlArma.Visible = (tipo == "ARMAMENTO"); } // --- MÉTODOS DE AÇÃO --- protected override void OnSalvar() { // Aqui os dados seriam validados conforme o tipo escolhido MessageBox.Show("Detalhamento do item vinculado com sucesso!"); } protected override void OnNovo() { /* Resetar campos */ } protected override void OnAlterar() { /* Habilitar campos */ } protected override void OnExcluir() { /* Limpar detalhe */ } protected override void OnLocalizar() { /* Buscar histórico */ } protected override void OnCancelar() { } } }