kazzx Posted December 9, 2009 at 04:26 PM Report Share #299490 Posted December 9, 2009 at 04:26 PM viva de novo, tenho um formulário com uma listbox onde estão nomes de pessoas. num outro formulário tenho um datagridview e ao lado um botão. eu sempre que clico no botão as pessoas que estão na listbox são adicionadas ao datagridview, mas eu isso não queria. o que eu queria é que quando clicasse no botão, aparecesse a primeira pessoa da listbox no datagridview e não todas e assim sucessivamente, ou seja, à medida que ia clicando no botão iam aparecendo as pessoas, uma a uma, existentes na listbox. é de saber que os dois formulários não estão no formulário principal. o do datagridview está no formulário principal e o outro formulário da listbox só aparece quando se clica num botão. estou a trabalhar com bases de dados Access. basicamente tenho de ir buscar o primeiro valor à tabela da BD. queria saber como o fazer :x Link to comment Share on other sites More sharing options...
kazzx Posted December 12, 2009 at 01:28 AM Author Report Share #299977 Posted December 12, 2009 at 01:28 AM ajudas ? 😕 Link to comment Share on other sites More sharing options...
fLaSh_PT Posted December 12, 2009 at 04:31 AM Report Share #299984 Posted December 12, 2009 at 04:31 AM Porque não utiliza uma ListView em vez de DataGridView? ListView é muito mais simples de utilizar, torna se o ideal para apresentar poucos valores .. Creio que deve começar com questões aos passos.. por o que me apercebi, está com duvidas também em como buscar valores da base de dados.. Tente ser mais explicito talvez o consiga ajudar.. Compr. Making the impossible possible and pwing the world on db at a time. Link to comment Share on other sites More sharing options...
legd1991 Posted December 12, 2009 at 12:51 PM Report Share #300006 Posted December 12, 2009 at 12:51 PM podes fazer como diz o flash_PT usares uma listbox em vez de datagrid... e podes fazer assim: Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Form2.Show() Dim valor As String = Form2.ComboBox1.Items(0) ListBox1.Items.Add(Form2.ComboBox1.Items(0)) Form2.ComboBox1.Items.Remove(valor) End Sub para preencheres a combobox com dados da base de dados ve isto : http://vbtuga.blogspot.com/2008/10/vbnet-utilizando-o-controlo-combobox.html espero ter ajudado cumps Link to comment Share on other sites More sharing options...
kazzx Posted December 13, 2009 at 06:34 PM Author Report Share #300185 Posted December 13, 2009 at 06:34 PM o datagridview é o mais adequado para o meu caso. porque a intenção é sempre que clicar no botão e aparecer o próximo valor da tabela no datagrid, ao lado da coluna do nome irá aparecer automaticamente uma combobox. basicamente, se na tabela da BD tiver 30 pessoas e as quiser fazer aparecer no datagridview (uma a uma) automaticamente também irão aparecer 30 combobox's à frente de cada nome. já agora, porque é que me estão a dar exemplos de código utilizando uma combobox? cumps. Link to comment Share on other sites More sharing options...
kazzx Posted December 19, 2009 at 01:40 AM Author Report Share #301385 Posted December 19, 2009 at 01:40 AM Private Sub btnproximo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnproximo.Click Dim postos As Long Dim conn As New OleDbConnection() conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\Projecto\GerirFilas\DataBase\DadosFila.mdb" Dim cmd As OleDbCommand = conn.CreateCommand cmd.CommandText = "Select nrpostos FROM postos" 'Abre conexão .. conn.Open() Dim leitor As OleDbDataReader = cmd.ExecuteReader() Try While leitor.Read() postos = leitor("nrpostos") End While 'Fecha conexão 'leitor.Close() Catch erro As Exception MsgBox("ERRO:" & erro.Message, MsgBoxStyle.Information) End Try 'Verificar se podemos adicionar mais um user aos postos If dgv1.Rows.Count = postos Then Beep() MsgBox("Todos os postos já se encontram ocupados. Retire alguém.") Else 'Tratar aqui de ir buscar o próximo 'Dim cmd As OleDbCommand = conn.CreateCommand cmd.CommandText = "Select nome FROM espera" leitor.Close() leitor = cmd.ExecuteReader() If leitor.Read() Then dgv1.Rows.Add(leitor("nome"), pst.Items(0), Format(DateAndTime.TimeSerial(Hour(Now), Minute(Now) + 30, Second(Now)), "hh:mm:ss")) 'dgv1.Rows.Add(leitor("nome"), pst.Items(0), Format(DateAndTime.TimeSerial(Hour(Now), Minute(Now) + 1, Second(Now)), "hh:mm:ss")) Dim nome As String = leitor("nome") leitor.Close() 'Eliminar o nome da tabela Espera cmd.CommandText = "delete FROM espera where nome='" & nome & "'" cmd.ExecuteNonQuery() Else Beep() MsgBox("Não existem pessoas em fila de espera.", MsgBoxStyle.Exclamation) End If End If leitor.Close() conn.Close() End Sub e assim ficou resolvido. tive de criar uma tabela na BD e um novo formulário também. Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now