Ir para conteúdo
Fórum Script Brasil

kuroi

Membros
  • Total de itens

    7.184
  • Registro em

  • Última visita

Tudo que kuroi postou

  1. interessante tava pensando aqui agora... tipo, se eu abro uma pagina e ele executa qualquer codigo javascript, ele guarda o estado das variaveis. e ai se eu clico em um link pra mesma janela (ou aba), ele abre a nova pagina, mas o estado das variaveis ele continua guardando, não?? pro caso de eu clicar em voltar. ele vai guardar... ainda mais o firefox q tem a opcao pra você reabrir as abas q você fechou... imagino q então ele só destrua as variaveis quando o navegador for fechado, sera q não?? então isso deve afetar muito a memoria. alias, o firefox grava o estado da navegacao tb no hd (por conta daquele recurso de restaurar a navegacao caso o computador desligue). talvez ele tb use o hd pra auxiliar tb durante a navegacao.
  2. kuroi

    Duvida com rotinas basicas

    hehhe não sei porque você acha q fica esquisito, mas é isso mesmo, pode por o igual la. você pelo menso testou com o igual?? se você puser e continuar dando erro, ai avise aqui q a gente tenta descobrir. mas tem igual sim, pode confiar, de uma olhada nesse link: http://www.w3schools.com/Sql/sql_update.asp ele ensina a sintaxe do update e, como você pode ver tem o igual sim. hehe se você não acredita, ai ta a prova é, o insert usa sim. quanto ao delete e ao update não precisa. se você fizer assim: Me.OleDbCommand1.CommandText = "delete * from tabela1 where nome = '" & nome & "'" <<<exclusao vai funcionar normal. eu so tava comentando sobre o partenteses porque nunca tinha visto ninguém usar assim, então não tinha certeza se aceitava. mas se você diz q funciona, td bem. mas é bom tomar cuidado, q isso tb varia de banco pra banco. e tem uns banco q são bem chatinho quanto a sintaxe da query (mysql, por exemplo), q pode acabar não aceitando. a linguagem não interfere na sintaxe da query. isso depende do banco de dados. então, poe o igual la, e se continuar dando erro, posta ai a nova mensagem q ele der e a linha q ele aponta. isso é muito importante, beleza?? se você não aponta pra gente a mensagem do erro e a linha, ai pode ser 1000 possibilidades, a gente não pode adivinha. o seu codigo parece estar legal, o problema parece ser na query (mas sem saber a mensagem do erro, eu não posso ter certeza aqui). EDITADO: e só pra esclarecer melhor, a linha teria q ser assim ó: Me.OleDbCommand1.CommandText = "update tabela1 set nome = '" & nome & "' where telefone = '" & telefone & "'" levando em conta q o campos nome e telefone existam (e esse sejam os nomes deles) na tabela tabela1 e q as variaveis nome e telefone tb existam, é isso. e pode por os partentes tb se quiser.
  3. kuroi

    (Resolvido) Dúvidas simples

    como assim, você diz na hora de chamar?? seria quanto aos parametros do malloc, tipo o tamanho do espaco?? quer dizer q o problema do malloc é somente q o programador pode fazer bestera ao usar?? o widechar seria tipo pra guardar texto em formato unicode ou alguma coisa do tipo?? falou.
  4. sim, você grava os dados em um arquivo .h (ou mais de um arquivo), e da um include nele(s) no .cpp, q o arquivo q vai ser compilado, onde a unica coisa obrigatoria é o main().
  5. visual basic .net tem q ser na sala de .net, essa aqui é so pra visual basic 6. tópico movido.
  6. kuroi

    Userform

    ue pro tab não precisa de codigo nenhum, ele já faz automatico não?? o maximo q você pode querer faze é mudar o tabindex dos textbox, o q muda a ordem dos tabs. pro enter, é so você adicioanr, no evento KeyPreview do UserForm, a linha: If KeyCode = 13 Then SendKeys "{TAB}"
  7. qual a linha do erro?? isso aqui, não seria assim?? RecSet.Open StrSql, DBConnect, adOpenFowardOnly, adLockReadOnly veja q você não pos o .Open. a gde semelhanca é na sintaxe, os objetos do .net framework são diferentes.
  8. o legal é você gravar so o codigo na tabela do cachorro. você mostra o nome do cliente na tela, mas não precisa gravar. se quise grava não tem problema, apesar de q conceitualmente não é consistente, as vezes é util como atalho, não precisa ir na otra tabela pra ler o nome. mas ai tem q lembra de sempre atualizar as duas tabelas se um dia for mudar o nome. o q você podia fazer era: 1 - criar uma variavel global (no module) e, quando ele clicar em sim na pergunta "Deseja cadastrar os animais do cliente?", você alterava essa variavel. quando o formulario abrisse, você carregava dela. e a mesma coisa pro nome. 2 - essa opcao seria muito melhor e mais pratica, quando ele clicasse sim, você simplesmente alterava os textbox do outro formulario direto. exemplo: r = MsgBox("Deseja cadastrar os animais do cliente?", vbYesNo + vbQuestion, "Pergunta") If r = vbYes Then frmAnimal.txtCodCliente.Text = Me.txtCodCliente.Text frmAnimal.txtNomeCliente.Text = Me.txtNomeCliente.Text End If[/code] ai você troca os nomes dos campos q eu pus de exemplo pelos nome dos seus campos de verdade. veja se é isso, qualquer coisa poste.
  9. hum valeu pela explicacao... pelo seu post, tinha achado q tivesse mais problemas não em relacao a forma de utilizar, mas em alguma coisa tipo uso de memoria, ou q tipo o javascript tivesse alguma caracteristica especifica alem das otras linguagens q trasnformasse as variavels globais em alguma coisa muito perigosa, etc... quanto a essa parte... nem sabia q javascript tinha garbage collector. o navegador não ficaria com a variavel carregada somente enqto a url atual estiver aberta?? e ai a variavl não seria perdida só depois q ele fechasse ou mudasse de pagina??
  10. a mas ai existe procedimento (procedure) e funcao (function). a diferenca é q function retorna valor e procedure não. em c procedure você faz declarando a funcao como tipo void (não retorna valor). não necessariamente na main imprime tudo. mtas vezes se você for imprimir tudo na main o codigo dela pode ficar gigante e complicado de entender. imagina q você precisa monta a tela com moldura e td mais (em c isso nem é muito comum, mas em clipper por exemplo, a gente fazia muito isso), é melhor faze uma procedure separada pra isso. tipo, mtas vezes o programa não é sequencial, e tem varias opcoes. cada hora pode precisar imprimir uma coisa de acordo com o q o usuario fizer, e as vezes é bom separar em otras procedures. eu penso o contrario, tem q dar tanta importancia ao codigo quanto ao resultado. tem uns cara q faz qualquer gambiarra ai e como funciona pra ele ta bom. mas ai o codigo ta horrivel, faz um mte de coisa desnecessaria e, o pior de tudo, o proprio cara q fez não entende uma unica linha e ai se um dia precisa altera o cara quase se mata porque não vai conseguir mexe em nd.
  11. kakarotto, qual o problema das variaveis globais?? porque não é bom usar?? não liga não, mas de uns tempos pra ca to querendo achar explicacao pra tudo q recomendam fazer... não gosto de fazer so porque falaram, quero sabe qual o motivo... falou.
  12. kuroi

    Ponteiro em função.

    porque não?? copiei seu codigo aqui, compilei e deu tudo certo. adicionei a linha: ConverteNumerosAbs(Num, cont); antes dos printf e mostrou o valor absoluto tudo certinho. a unica otra alteracao q teria q fazer é por o return 0 depois do system("pause"), porque o return sai do programa.
  13. o q exatametne você quer dizer com implementada com ponteros?? a matriz é declara tipo: int matriz[x][y][z]; toda matriz é um ponteiro.
  14. kuroi

    Char para inteiro

    mas ta compilando?? e o q era pra fazer o primero if?? da uma olhada: if(s[i]==' '){ ele so vai entra no if se um dos caracteres de dentro do array (q imagino q seja um array de char) for igual a espaco (tecla barra de espcao do teclado). se não tiver nenhum ele não entra mesmo. o q você queria fazer com esse if??
  15. kuroi

    Ponteiro em função.

    hum... então ai tem q ver o q o seu professor ensinou... dependendo da materia q ele passou ele pode querer q você use alguma coisa diferente. você pode fazer como eu falei, no comeco você aloca o espaco pra 1 com o malloc(). e ai você faz um while enqto ele não digita 0 e ponha um contador. e vai realocando mais 1, de acordo com o contador. e ai pra chamar a funcao você passa o contador de segundo parametro. ou talvez ficasse mais legal assim. tipo de inicio aloca o espaco pra um numero gde (mas não tanto), tipo pra 20 numeros. não acho q o usuario vai querer digita mais q isso. ai se o contador passar de 20, aloca mais 20 e assim por diante. quando contador for multiplo de 20 você aloca. seila, pode só ser coisa minha, mas não gosto da ideia de ficar mexendo na memoria. mas ainda acho q a melhor opcao era essa q falei aqui:
  16. kuroi

    Ponteiro em função.

    quem não aceitou?? seu professor?? porque o compilador não tem porque não aceitar. eu mesmo digitei esse codigo aqui no dev c++ e rodou sem problema nenhum. qual a mensagem de erro q aparece?? você quer dizer q o usuario não tem limite de digitar?? pode digitar ate cansar?? mas e ai como faria quando quisesse parar?? se ele digitasse 0 parava, seria tipo isso?? se for o q acontece é q todo vetor é um pontero. ou seja, você já ta fazendo sim com pontero, a unica diferenca é q quando você declara o array você tem q dar o tamanho na hora da declaracao assim ele já aloca o espaco. agora se você declarar como pontero você tb vai ter q alocar o espaco. se não tem espaco alocado não tem onde digitar. ai ou você usaria o new, ou a funcao malloc() pra aloca o espaco. mas ai acontece q como não tem limites você não sabe qual o tamanho do espacao q vai ter q alocar certo?? ai você teria q usar o realloc() pra realocar o espaco a cada numero. mas entenda q não é muito bom ficar fazendo isso. realocando o espaco toda vez. tb bem pra programinha pequeno tipo esse sem problema, mas acontece q no realloc(), se ele não encontra espaco depois de onde já ta alocado ele tem q mover tudo q ele aloucou pra otro espaco. e ai em sistemas gdes você pode ter problema de desempenho. alem de q não é legal ficar brincando ca memoria assim. o legal seria você ter uma nocao de quanto espaco é usado normalmente e quando abrir já aloca essa qtde. e ai só realocaria se passasse disso. exemplos de malloc() e realloc() aqui: http://www.cplusplus.com/reference/clibrary/cstdlib/ (desca a barra ate Dynamic memory management)
  17. kuroi

    Ponteiro em função.

    você quer dizer q o usuario vai escolhe o tamanho do array?? tipo qtos numeros ele quer digitatr?? se for isso, você pode pedir pra ele digitar o tamanho e criar o array cum esse tamanho. exemplo: int tam; printf("Digite o tamanho do array"); scanf("%d", &tam); int num[tam], i;[/code]
  18. kuroi

    Que função usar?

    sei q da pra usar a biblioteca <time.h>. mas é meio chato mexer com ela. aqui tem um exemplo: http://www.cplusplus.com/reference/clibrar.../localtime.html o codigo seria mais o menos esse: time_t segundos; tm *dataatual; segundos = time (NULL); //Segundos q se passaram desde 1970 dataatual = localtime ( &segundos ); //Converte os segundos pra formato de data[/code] e ai tm é uma struct. o ano fica guardado em tm_year, o mes em tm_mon e o dia do mes em tm_mday. so q acontece q em tm_year ele guarda os anos passados desde 1900. então você tem q somar 1900 pra pegar o ano. tipo 2008 ele guarda como 108 (108 anos passados desde 1900). ai se você soma 1900 você chega em 2008. mesma coisa pro mes. mas o dia é o dia do mes mesmo. tipo assim: [code]printf ( "dia atual: %d\n", (*dataatual).tm_mday); printf ( "mes atual: %d\n", (*dataatual).tm_mon + 1); printf ( "ano atual: %d\n", (*dataatual).tm_year + 1900);
  19. kuroi

    Ponteiro em função.

    fernando sempre q for posta, poe o codigo dentro da tag CODE pra ficar mais facil de ver, beleza?? exemplo: [c.o.d.e] isso é código [/c.o.d.e] so q sem os pontos pra escrever code. agora quanto ao seu codigo a funcao ta certa, mas o codigo do main é q ta errado. você já não tentou compilar?? sempre tenta compila e ve q problemas o compilador aponta. na verdade o unico problema na funcao é q você declarou ela como float, mas na verdade ela não tem q retorna valor. você vai simplesmente altera o vetor, e como vetor é sempre passado por referencia, o vetor original vai ficar alterado automaticamente. então você pode declara a funcao como void. a não ser q, no exercicio você não possa alterar o vetor original e a funcao tenha q retornar o vetor alterado. ai nesse caso você teria q declarar a funcao como pontero de int e ainda alocar espaco na memoria pra retorna-lo. mas ai se fosse o caso acho q seu professors teriam especificado. otro detalhe é q você disse mas float não é inteiro, você podia declarar como int. quanto ao main, veja q você declarou o val, mas não declaro como vetor. a funcao não devia receber um vetor?? você declarou a funcao correto recebendo o vetor, mas na hora de passar tem q pasas tb um vetor. ai você devia fazer um for pra ler todos os indices do vetor. e ai depois podia fazer um otro for pra escreve o resultado. veja se resolve ai, qualquer coisa poste.
  20. hum... sei la... acho q você precisa de dois controles data. q informacoes você quer transferi?? todas?? e as duas tabela são iguais?? imagino q você esteja comecando, então vo te passar um tutorial aqui q ajuda muito (inclusive ele ensina a fazer aquela busca q você queria no otro tópico, de um jeito diferente do q eu passei): http://www.macoratti.net/datactl.htm e tb de uma olhada nesse site q tem mta coisa. http://www.macoratti.net/ e quanto ao ado e data, recomendo você não usar controle vinculado não. tipo, não sua data e nem adodatacontrol. declara sempre o recordset e a conexao e faca por codigo. isso por motivos q você ve aqui: http://www.macoratti.net/vbc_vinc.htm mas é só sugestao, não quero da palpite no q você ta fazendo, é você q sabe. alem de q é interessante sim aprende a usar o controle data, mesmo q não seja a melhor opcao pra programar. hum, e tb prefira sempre ado ao dao, porque o dao já ta mais q ultrapassado. como usar ado sem o adodatacontrol tb é explicado aqui: http://www.macoratti.net/ado.htm falou, qualquer duvida poste.
  21. hum... tipo, imagino q você tenha um campo codigo no banco. ai imaginando q o nome do campo seja Codigo você faria assim ó: Data1.Recordset.MoveFirst 'Move pro primero registro Data1.Recordset.FindFirst "Codigo = " & txtCodigo.Text 'Aqui ele le um por um a partir do atual ate achar o codigo If Data1.Recordset.EOF Then 'EOF significa q chegou no final do arquivo. E se chego no final é porque não encontro o codigo -- Não Encontrou -- Else -- Encontrou -- End If[/code] caso o codigo seja do tipo texto, você tem q fazer o find entr aspa, assim: [code]Data1.Recordset.FindFirst "Codigo = '" & txtCodigo.Text & "'" não uso o componente data, mas acho q é mais o menos isso, qualquer problema poste.
  22. kuroi

    Duvida com rotinas basicas

    não não to falando q o erro é na sintaxe do update, e alias to falando isso desdo comeco: faltou esse igual aqui: ai e se você puse o = e o erro continua com a mesma mensagem tenta tira os parenteses em volta dos campos, ta meio estranho, nunca vi ninguém usar assim, seila se ele vai aceitar. fora isso no seu codigo, não to vendo onde você ta setando a conexao no objeto command, mas se você tive fazendo isso em otra parte do codigo, td bem.
  23. kuroi

    VB PARA LINUX

    não... o maximo q tem é um tal de hbasic, q tipo assim como o visual basic, a sintaxe dele é baseada em basic. acho q é o mais proximo q você pode chegar do visual basic, mas não seria exatamente uma outra versao do visual basic, nem é feito pela microsoft nem nd. http://hbasic.sourceforge.net/ agora já tem um tempo q me falaram sobre um versao pra linux do .net framework (e consequentemente, a possibilidade de programar em, alem de otras linguagens .NET tipo c#, tb possivelmente o visual basic .NET), mas não sei se isso realmente deu o vai dar em alguma coisa.
  24. kuroi

    Duvida com rotinas basicas

    então... ai é no update. você mudou o negocio do = q eu falei?? como fico a query agora??
  25. kuroi

    Criando Hotkeys

    a pode ser, mas ele tava querendo responder a tecla pressionada e foi isso q eu passei pra ele. mas tb isso depende mais do q se quer fazer. ai, se o cara vai saber utilizar, depende de como o programador fizer, o cara q programar q tem q se virar pra faze o negocio bem acessivel e etc. usar o menu é sim uma boa opcao, mas tb nem td mundo quer por o menu la no topo do projeto. ai da no mesmo, o cara não tem como saber a não ser q se explicite de otra forma. fora q o hotkey do menu é baseado em combinacao tipo Ctrl + A, etc. ele tava querendo fazer pra tecla Q, ai passei o exemplo da tecla Q. hehe se você pensar nos programas q são feitos normalmente no visual basic, tipo sistemina de banco de dados e etc, pode parece estranho um programa q você sai apertando Q, mas não sei q tipo programa ele quer faze e tb não vo ficar dando palpite, dei a resposta imaginando q ele soubesse o q esta fazendo. mas é uma boa dica essa sua do menu, facilita ate no codigo.
×
×
  • Criar Novo...