Jump to content
eduardohaag

Listas primarias e secundarias

Recommended Posts

Olá sou amador e iniciante em programação.

Estou trabalhando  em um projeto onde tenho uma tela com uma lista de pedidos, com varias colunas como, ID, cliente, previsão de entrega, valor total. 

Gostaria de colocar uma coluna com o texto "visualizar", que quando ocorresse um click, abrisse abaixo da linha selecionada uma lista secundaria com os produtos do pedido, quantidade, preço etc...

 

Porém não tenho a menor noção de como fazer isso. Pode ser que exista algum controle que tenha essa possibilidade.

Estou trabalhando com vb.net.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By Manoel Calonga
      Olá Pessoal.. Estou fazendo um programa para ajudar a empresa aonde trabalho.
      O programa precisa ler um aruquivo (.xxl), e executar um programa de conversão.
      Consegui fazer com que leia os arquivos da pasta e carrega em um FiliListBox e
      com botão de Executar ele converte o arquivo selecionado.
      O que acontece é que ele transforma somente um arquivo, mesmo tendo selecionado todos os arquivos da pasta.
      eu gostaria que ele pulasse para o próximo item selecionado e também fizesse a conversão.
      Qualquer ajuda é bem vinda, desde já agradeço.!
    • By alexkbw
      ola, preciso de ajuda
      estou aprendendo C++ 
      e nao consigo criar uma lista encadeada que armazene palavras
      segue o codigo:
       
      // listaEncadeada.cpp : Este arquivo contém a função 'main'. A execução do programa começa e termina ali. #include "pch.h" #include "conio.h" #include "string" #include<iostream> using namespace std; struct lista { char c; int n; struct lista*p; }; struct lista * inserirn(char,int); struct lista * prim; void inserir() { char c; int n; printf("\ninforme uma cor :"); scanf_s("%s", &c); printf("\ninforme um numero:"); scanf_s("%d", &n); inserirn(c,n); } struct lista * inserirn(char c,int n) { struct lista *novo, *aux; novo = (struct lista*)malloc(sizeof(struct lista)); if (novo!=NULL)//caso nao aja memoria { novo->n= n; novo->c = c; novo->p = NULL; if (prim==NULL) { prim = novo; } else { aux = prim; while (aux->p != NULL) { aux = aux->p; } aux->p = novo; } } return novo; } int main() { prim = NULL; inserir(); inserir(); inserir(); _getch(); }  
    • By eduardohaag
      Olá,
      Mais uma vez aqui estou eu com uma duvida que não estou conseguindo resolver.
      Estou desenvolvendo um ERP para a grafica da minha esposa. Nesse sistema existe um modulo que registra o tempo trabalhado.
      Para fazer isso existe um botão no formulário principal, que quando é clicado salva a hora na variável entrada, e quando clicado novamente ele registra no banco de dados o intervalo entre a entrada e saida.
      Até ai tudo ok. Porém as vezes a pessoa sai e esquece de clicar para registrar a saida.
       
      Então gostaria de fazer com que a cada 5 minutos fosse verificado se teve alteração na posição do ponteiro do mouse, porém permitindo que o usuário possa usar o programa.
       
      Procurando na internet descobri que para isso o melhor seria usar uma thread para fazer essa verificação da posição do mouse em segundo plano já que seria executado a cada 5 minutos e dessa forma travaria a execução do form principal.
       
      O problema está que quando ele detecta que mouse ficou parado por mais de 5 minutos e executa o codigo que salvo o intervalo no banco de dados acontece esse erro quando chega na linha "btEntrada.Text = "Registrar Entrada"" : "System.InvalidOperationException: 'Operação entre threads inválida: controle 'ToolStrip1' acessado de um thread que não é aquele no qual foi criado.'
       
      Li que tenho que usar algo como invoke e delegate, mas mesmo estudando não consegui entender como implementar.
      meu codigo é o seguinte:
       
      Imports System.ComponentModel Public Class Principal_content Dim saida As DateTime Dim tempo As TimeSpan Dim entrada As DateTime Dim ponteiro As Point Sub GerPonto() Do Threading.Thread.Sleep(5000) If ponteiro = Cursor.Position Then Call registraponto() End If ponteiro = Cursor.Position Loop End Sub Private Sub btEntrada_Click(sender As Object, e As EventArgs) Handles btEntrada.Click Call registraponto End Sub Sub registraponto() Dim trd = New Threading.Thread(AddressOf GerPonto) If btEntrada.Text = "Registrar Entrada" Then entrada = FormatDateTime(Now) btEntrada.Text = "Registrar Saida" btEntrada.ToolTipText = "Registrar Saida" btEntrada.Image = My.Resources.appointment_new_Ativo btEntrada.ForeColor = Color.Lime trd.Start() Else trd.Abort() saida = Now tempo = saida.Subtract(entrada) sql = "INSERT INTO ponto (Data, Entrada, Saida, Segundos) VALUES (#" & Format(entrada, "MM/dd/yyyy") & "#, #" & Format(entrada, "hh:mm:ss") & "#, #" & Format(saida, "hh:mm:ss") & "#, " & Replace(FormatNumber(tempo.TotalSeconds, 0, TriState.False, TriState.False, TriState.False), ",", ".") & ")" btEntrada.Text = "Registrar Entrada" btEntrada.Text = "Registrar Entrada" btEntrada.Image = My.Resources.appointment_new_desativo btEntrada.ForeColor = Color.Red AcessoDB.ExecutarComando(sql, CommandType.Text, Nothing, AcessoDB.TipoDeComando.ExecuteNonQuey) End If End Sub End Class  
    • By Bene Silva Júnior
      Boa tarde!
       
      Atualmente utilizo o Visual Studio 2010 para desenvolver pequenos programas. Pretendo começar a desenvolver sistemas comerciais e ERPs de pequeno e médio porte mas tenho dúvidas de devo continuar a utilizar o VS 2010 ou migrar para outra versão.
       
      Qual versão do VS vocês me recomendam para começar a desenvolver sistemas comerciais e ERPs de pequeno e médio porte?
       
      Obrigado.
    • By drapn
      Boa tarde pessoal
      Estou com um projeto em Vb.Net que consiste em importar dados de uma planilha de Excel para um Datagridview.
      O projeto esta funcionando tudo ok porem notei que quando vou movendo as barras laterais e inferiores o formulário apresenta grande lentidão para mover as colunas etc...
      Fiz o teste criando um projeto novo com somente 1 Form, 1 Datagrid e 1Botão e os códigos para fazer a importação e quando eu "populo" o datagridview com o conteudo ele apresenta esses legs.
       
      Alguem a ja passou por isso?
      Será que é configuração da máquina? (Não é uma máquina tão fraca)
      O Vb.NET é a versão 2015
       
       
      Os arquivos de Excel variam de 80 Linhas por 5 Colunas á 400 linhas e 5 colunas
       
      O código é esse:
       
      Sub ImportaEstoque()         Dim Local         Local = EndArquivo()         If String.IsNullOrWhiteSpace(Local) Then             MessageBox.Show("Nenhum arquivo foi selecionado.", "Informação.", MessageBoxButtons.OK, MessageBoxIcon.Information)             Return         End If         '------------------------------         Dim caminhoArquivoExcel As String = Local         Dim nomePlanilhaExcel As String = "ESTQ" & "$"         Dim conexaoOleDb As OleDbConnection = Nothing         Dim ds As DataSet         Dim cmd As OleDbDataAdapter         '------------------------------         Try             'conexaoOleDb = New OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0;Data Source= " & Local & ";Extended Properties=Excel 8.0;")             conexaoOleDb = New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source= " & Local & ";Extended Properties='Excel 8.0;HDR=Yes'")             'cmd = New OleDbDataAdapter("Select * from [" & nomePlanilhaExcel & "]", conexaoOleDb)             cmd = New OleDbDataAdapter("Select * from [" & nomePlanilhaExcel & "]  Where UM Like '%" & "PC" & "%'", conexaoOleDb)             cmd.TableMappings.Add("Table", "tabelaExcel")             ds = New DataSet             cmd.Fill(ds)             dgvDados.DataSource = ds.Tables(0)         Catch ex As Exception             MessageBox.Show(ex.ToString, "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error)         Finally             conexaoOleDb.Close()         End Try         sbQtdItens.Text = "Encontrados " & dgvDados.RowCount.ToString & " itens."     End Sub  
       
       
      Pessoal desde já muito obrigado pela força!
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.