Clique abaixo para nos ajudar
Conectar-se

Esqueci minha senha

Estamos no Facebook
Buscar
 
 

Resultados por:
 


Rechercher Busca avançada

Quem está conectado
10 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 10 Visitantes :: 2 Motores de busca

Nenhum

[ Ver toda a lista ]


O recorde de usuários online foi de 468 em 1/3/2012, 10:43
Espessura do cursor intermitente

7/3/2017, 09:08 por Jefferson Matakas

Bom dia a todos !!

Existe uma opcao no windows que pode ser acessada atraves da 'central da …

Comentários: 0

DESENVOLVIMENTO EM REDES

4/3/2017, 18:45 por AJC

Pessoal tem ou conhece livros ou material para programação em
redes usando banco de dados nativo …

Comentários: 0

USAR REPORT FORM

30/12/2016, 09:06 por AJC

Pessoal bom dia,
Estou com um grande problema, já pesquisei muita coisa sobre report form, mas o …

Comentários: 4

Como preencher campos vazios

9/2/2017, 11:55 por Linghston

Pessoal boa tarde,

É o seguinte, eu preciso preencher os campos de uma coluna da tabela DBF que …

Comentários: 2

Enviar msg para WhatsAPP via VFP

7/2/2017, 10:31 por Eliana

Olá Pessoal!

Alguém sabe se é possível enviar mensagem para o WhatsAPP via VFP?


Grata


Comentários: 0

Estatísticas
Temos 7037 usuários registrados
O último usuário registrado atende pelo nome de GETULIO

Os nossos membros postaram um total de 31 mensagens em 17 assuntos

Um For não enxerga outro no DataGrid! (VIsual Basic)

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Um For não enxerga outro no DataGrid! (VIsual Basic)

Mensagem por Ana Waldila em 2/1/2017, 12:44

Olá pessoal! Estou com uma dúvida que não me deixa descansar tem dias já....
Tentarei ser clara.
Vamos lá: Estou desenvolvendo um software de cálculo de engenharia. Neste software, ele é composto por 2 grandes blocos de For, cada um fazendo suas devidas verificações e seus devidos cálculos. O primeiro For é usado até que se esgotem as suas condições, dai a leitura do programa sai desse for e entra no segundo For. O primeiro For se chama "Estádio 2" e o segundo For se chama "Estádio 3".
Até ai ok.
De forma geral, os cálculos são iterativos, onde as variáveis vão sendo atualizadas a cada passada de For. Em cada passada, as 8 colunas do DataGrid vão sendo preenchidas.
A última coluna, "Deflexão" é uma coluna cuja qual é calculada (ou deveria ser calculada) da seguinte maneira: O programa tem que fazer a leitura de CADA célula da coluna "Momento", obedecendo a umas determinadas condições de IF's. Quando as condições são aceitas, o programa pega os valores das colunas "Linha Neutra" e "Deformação Compressão Concreto" para realizar os devidos cálculos (reparem que o valor da célula da coluna "Momento" é apenas um parâmetro de verificação. Sim, só este pode ser o parâmetro, conforme os cálculos que eu fiz em papel.)
Eu tive que explicar isso tudo, em linhas muito gerais, para poder chegar no ponto aonde eu quero: o FOR do "Estádio 3" não está conseguindo realizar a leitura dos valores da coluna momento do "ESTÁDIO 2". Ou seja, O FOR "Estádio 3", para averiguar as condições dos valores de "Momento", precisa acessar o FOR "Estádio 2", e ele não o enxerga, tanto que o resultado sai Not a Number. Ele só está enxergando o FOR dele mesmo, "Estádio 3".
Já tentei fazer um FOR em separado para realizar os cálculos da última coluna, mas isso não resolve.
Para vocês terem ideia do que ocorre, anexei uma figura do resultado.
Aqui está uma pequena PARTE do código, de como está atualmente a leitura das linhas do DataGrid:
For Each linha As DataGridViewRow In frm_Resultado.DataGrid_Resultado_Estadio2.Rows    'percorre cada linha

                           For Each celula As DataGridViewCell In frm_Resultado.DataGrid_Resultado_Estadio2.Rows(linha.Index).Cells    'percorre cada celula da linha

                               If frm_Resultado.DataGrid_Resultado_Estadio2.CurrentRow.Cells(6).Value.ToString() <= 1.01 * 3 * momento_variavel_estadio3 / 4 Then  'verifica a condição do valor do momento na coluna momento

                                   If frm_Resultado.DataGrid_Resultado_Estadio2.CurrentRow.Cells(6).Value.ToString() >= 0.99 * (3 * momento_variavel_estadio3 / 4) Then

                                       ecm_resultado_parte1_estadio3 = frm_Resultado.DataGrid_Resultado_Estadio2.CurrentRow.Cells(3).Value.ToString()

                                       LN_resultado_parte1_estadio3 = frm_Resultado.DataGrid_Resultado_Estadio2.CurrentRow.Cells(2).Value.ToString()

                                   End If

                               End If

                               If frm_Resultado.DataGrid_Resultado_Estadio2.CurrentRow.Cells(6).Value.ToString() <= 1.01 * (momento_variavel_estadio3 / 2) Then

                                   If frm_Resultado.DataGrid_Resultado_Estadio2.CurrentRow.Cells(6).Value.ToString() >= 0.99 * (momento_variavel_estadio3 / 2) Then

                                       ecm_resultado_parte2_estadio3 = frm_Resultado.DataGrid_Resultado_Estadio2.CurrentRow.Cells(3).Value.ToString()

                                       LN_resultado_parte2_estadio3 = frm_Resultado.DataGrid_Resultado_Estadio2.CurrentRow.Cells(2).Value.ToString()

                                   End If

                               End If

                               If frm_Resultado.DataGrid_Resultado_Estadio2.CurrentRow.Cells(6).Value.ToString() <= 1.01 * (momento_variavel_estadio3 / 4) Then

                                   If frm_Resultado.DataGrid_Resultado_Estadio2.CurrentRow.Cells(6).Value.ToString() >= 0.99 * (momento_variavel_estadio3 / 4) Then

                                       ecm_resultado_parte3_estadio3 = frm_Resultado.DataGrid_Resultado_Estadio2.CurrentRow.Cells(3).Value.ToString()

                                       LN_resultado_parte3_estadio3 = frm_Resultado.DataGrid_Resultado_Estadio2.CurrentRow.Cells(2).Value.ToString()

                                   End If

                               End If

                           Next celula

                           deflexao_estadio3 = ((comprimento_vao ^ 2) / 48) * ((ecm_resultado_parte3_estadio3 / LN_resultado_parte3_estadio3) + _
                               (ecm_resultado_parte2_estadio3 / LN_resultado_parte2_estadio3) + (3 * ecm_resultado_parte1_estadio3 / LN_resultado_parte1_estadio3) + _
                               (ecm_variavel_estadio3 / LN_estadio3))

                       Next linha

                       My.Forms.frm_Resultado.DataGrid_Resultado_Estadio2.Rows.Add(j, "Regime Nao Linear (Estadio 3) - 4", _
                                                                                  Format(LN_estadio3, "####.00000"), _
                                                                                  Format(ecm_variavel_estadio3, "####.0000000000"), _
                                                                                  Format(es1_variavel_estadio3, "####.0000000000"), _
                                                                                  Format(es2_variavel_estadio3, "####.0000000000"), _
                                                                                  Format(momento_variavel_estadio3, "####.00000"), _
                                                                                  Format(deflexao_estadio3, "##.0000000000"))


Peço desculpas se eu não consegui ser clara o suficiente.
De qualquer maneira agradeço a atenção de todos! Obrigada!

Ana Waldila
Participa Pouco
Participa Pouco


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo


 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum