From slibre en natio.co.cu Sat May 6 16:47:44 2017 From: slibre en natio.co.cu (Ismael L. Donis Garcia) Date: Sat, 6 May 2017 10:47:44 -0400 Subject: [Lazarus-es] Como puedo eliminar todos los registros de un mendataset sin tener que recorrerlo? Message-ID: Hago lo siguiente y no me vacía el dataset: dataset.close; dataset.open; y si pongo a continuación: if dataset.RecordCount > 0 then Application.MessageBox(pchar(inttostr(dataset.RecordCount)) , pchar(Self.Caption), MB_ICONINFORMATION); Me sigue devolviendo registros. Estoy trabajando con TMenDataset Saludos Cordiales a tod en s ======== | ISMAEL | ======== Devuan User WebSite: sisconge.byethost15.com From slibre en natio.co.cu Sat May 6 16:47:44 2017 From: slibre en natio.co.cu (Ismael L. Donis Garcia) Date: Sat, 6 May 2017 10:47:44 -0400 Subject: [Lazarus-es] Como puedo eliminar todos los registros de un mendataset sin tener que recorrerlo? Message-ID: Hago lo siguiente y no me vacía el dataset: dataset.close; dataset.open; y si pongo a continuación: if dataset.RecordCount > 0 then Application.MessageBox(pchar(inttostr(dataset.RecordCount)) , pchar(Self.Caption), MB_ICONINFORMATION); Me sigue devolviendo registros. Estoy trabajando con TMenDataset Saludos Cordiales a tod en s ======== | ISMAEL | ======== Devuan User WebSite: sisconge.byethost15.com From jcuello en artextrading.com Sat May 6 18:02:45 2017 From: jcuello en artextrading.com (Jose Antonio Cuello) Date: Sat, 6 May 2017 18:02:45 +0200 (CEST) Subject: [Lazarus-es] Como puedo eliminar todos los registros de un mendataset sin tener que recorrerlo? In-Reply-To: References: Message-ID: <700096339.89616.1494086565572.JavaMail.zimbra@artextrading.com> Hola, me parece recordar que tenía una propiedad "Persistent" que si estaba activa al abrir volvía a cargar los datos. Un saludo ----- Mensaje original ----- De: "Spanish version of Lazarus List" Para: "Spanish version of Lazarus List" , "Spanish version of Lazarus List" CC: "Ismael L. Donis Garcia" Enviados: Sábado, 6 de Mayo 2017 16:47:44 Asunto: [Lazarus-es] Como puedo eliminar todos los registros de un mendataset sin tener que recorrerlo? Hago lo siguiente y no me vacía el dataset: dataset.close; dataset.open; y si pongo a continuación: if dataset.RecordCount > 0 then Application.MessageBox(pchar(inttostr(dataset.RecordCount)) , pchar(Self.Caption), MB_ICONINFORMATION); Me sigue devolviendo registros. Estoy trabajando con TMenDataset Saludos Cordiales a tod en s ======== | ISMAEL | ======== Devuan User WebSite: sisconge.byethost15.com _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus-ide.org http://lists.lazarus-ide.org/listinfo/lazarus-es From slibre en natio.co.cu Sat May 6 19:32:09 2017 From: slibre en natio.co.cu (Ismael L. Donis Garcia) Date: Sat, 6 May 2017 13:32:09 -0400 Subject: [Lazarus-es] Como puedo eliminar todos los registros de un mendataset sin tener que recorrerlo? References: <700096339.89616.1494086565572.JavaMail.zimbra@artextrading.com> Message-ID: No nada, no tiene esa propiedad. Saludos Reiterados ======== | ISMAEL | ======== Devuan User WebSite: sisconge.byethost15.com ----- Original Message ----- From: "Jose Antonio Cuello via Lazarus-es" To: "Spanish version of Lazarus List" Cc: "Jose Antonio Cuello" Sent: Saturday, May 06, 2017 12:02 PM Subject: Re: [Lazarus-es] Como puedo eliminar todos los registros deun mendataset sin tener que recorrerlo? > Hola, me parece recordar que tenía una propiedad "Persistent" que si > estaba activa al abrir volvía a cargar los datos. > > Un saludo > > ----- Mensaje original ----- > De: "Spanish version of Lazarus List" > Para: "Spanish version of Lazarus List" > , "Spanish version of Lazarus > List" > CC: "Ismael L. Donis Garcia" > Enviados: Sábado, 6 de Mayo 2017 16:47:44 > Asunto: [Lazarus-es] Como puedo eliminar todos los registros de un > mendataset sin tener que recorrerlo? > > Hago lo siguiente y no me vacía el dataset: > > dataset.close; > dataset.open; > > y si pongo a continuación: > > if dataset.RecordCount > 0 then > Application.MessageBox(pchar(inttostr(dataset.RecordCount)) , > pchar(Self.Caption), MB_ICONINFORMATION); > > > Me sigue devolviendo registros. > Estoy trabajando con TMenDataset > > > Saludos Cordiales a tod en s > ======== > | ISMAEL | > ======== > Devuan User > WebSite: sisconge.byethost15.com > > > _______________________________________________ > Lazarus-es mailing list > Lazarus-es en lists.lazarus-ide.org > http://lists.lazarus-ide.org/listinfo/lazarus-es > _______________________________________________ > Lazarus-es mailing list > Lazarus-es en lists.lazarus-ide.org > http://lists.lazarus-ide.org/listinfo/lazarus-es > From slibre en natio.co.cu Sat May 6 20:59:34 2017 From: slibre en natio.co.cu (Ismael L. Donis Garcia) Date: Sat, 6 May 2017 14:59:34 -0400 Subject: [Lazarus-es] Eventos DBGrid Message-ID: <714937D2E1CC4D1ABFD33816F293424C@natio.co.cu> Tengo una pequeña duda de que evento pueda utilizar para calcular datos al editar celdas en un grid. Tengo en un dbgrid las siguientes columnas cantidad precio valor existencia y quiero que cuando yo edite la columna cantidad me la sume a la existencia y si tiene un valor precio me calcule el valor eso mismo lo necesito para si cambio en precio me cambie el valor y también para si cambio el valor me cambie el precio todo eso al editar el valor de las columnas correspondientes. Pero no encuentro en que evento hacerlo. todo ello antes de hacer post Saludos Cordiales ======== | ISMAEL | ======== Devuan User : http://distrowatch.com/table.php?distribution=devuan WebSite: sisconge.byethost15.co From slibre en natio.co.cu Sat May 6 20:59:34 2017 From: slibre en natio.co.cu (Ismael L. Donis Garcia) Date: Sat, 6 May 2017 14:59:34 -0400 Subject: [Lazarus-es] Eventos DBGrid Message-ID: <714937D2E1CC4D1ABFD33816F293424C@natio.co.cu> Tengo una pequeña duda de que evento pueda utilizar para calcular datos al editar celdas en un grid. Tengo en un dbgrid las siguientes columnas cantidad precio valor existencia y quiero que cuando yo edite la columna cantidad me la sume a la existencia y si tiene un valor precio me calcule el valor eso mismo lo necesito para si cambio en precio me cambie el valor y también para si cambio el valor me cambie el precio todo eso al editar el valor de las columnas correspondientes. Pero no encuentro en que evento hacerlo. todo ello antes de hacer post Saludos Cordiales ======== | ISMAEL | ======== Devuan User : http://distrowatch.com/table.php?distribution=devuan WebSite: sisconge.byethost15.co From jesusrmx en gmail.com Sun May 7 00:29:49 2017 From: jesusrmx en gmail.com (Jesus Reyes A.) Date: Sat, 06 May 2017 17:29:49 -0500 Subject: [Lazarus-es] Eventos DBGrid In-Reply-To: <714937D2E1CC4D1ABFD33816F293424C@natio.co.cu> References: <714937D2E1CC4D1ABFD33816F293424C@natio.co.cu> Message-ID: En Sat, 06 May 2017 13:59:34 -0500, Ismael L. Donis Garcia via Lazarus-es escribió: > Tengo una pequeña duda de que evento pueda utilizar para calcular datos > al editar celdas en un grid. > > Tengo en un dbgrid las siguientes columnas > cantidad > precio > valor > existencia > > y quiero que cuando yo edite la columna cantidad me la sume a la > existencia y si tiene un valor precio me calcule el valor > eso mismo lo necesito para si cambio en precio me cambie el valor > y también para si cambio el valor me cambie el precio > > todo eso al editar el valor de las columnas correspondientes. Pero no > encuentro en que evento hacerlo. todo ello antes de hacer post > > Saludos Cordiales > ======== > | ISMAEL | > ======== El evento que te dice que campo ha cambiado es el OnDataChange del TDatasource. Jesus Reyes A. From jesusrmx en gmail.com Sun May 7 00:36:00 2017 From: jesusrmx en gmail.com (Jesus Reyes A.) Date: Sat, 06 May 2017 17:36:00 -0500 Subject: [Lazarus-es] Como puedo eliminar todos los registros de un mendataset sin tener que recorrerlo? In-Reply-To: References: Message-ID: En Sat, 06 May 2017 09:47:44 -0500, Ismael L. Donis Garcia via Lazarus-es escribió: > Hago lo siguiente y no me vacía el dataset: > > dataset.close; > dataset.open; > > y si pongo a continuación: > > if dataset.RecordCount > 0 then > Application.MessageBox(pchar(inttostr(dataset.RecordCount)) , > pchar(Self.Caption), MB_ICONINFORMATION); > > > Me sigue devolviendo registros. > Estoy trabajando con TMenDataset > Uno podría pensar que clear(false) o clear debería hacerlo.... Jesus Reyes A. From mmgomez en gmail.com Sun May 7 02:11:33 2017 From: mmgomez en gmail.com (Martin Gomez) Date: Sat, 6 May 2017 21:11:33 -0300 Subject: [Lazarus-es] Como puedo eliminar todos los registros de un mendataset sin tener que recorrerlo? In-Reply-To: References: Message-ID: 2017-05-06 19:36 GMT-03:00 Jesus Reyes A. via Lazarus-es < lazarus-es en lists.lazarus-ide.org>: > Uno podría pensar que clear(false) o clear debería hacerlo.... ​Así es como funciona. Dataset.Clear(False) mantiene los Fields, si le pasas True de lo deja totalmente virgen​ (será útil si usas un solo MemDataset para muchas funciones, para mi es un engorro, siempre uso False) NOTA: Clear cierra el Dataset, luego de llamar ese método hay que hacer un Open. -- ​ Most good programmers do programming not because they expect to get paid or get adulation by the public, but because it is fun to program. ​ ​ *Linus Torvalds* ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From slibre en natio.co.cu Mon May 8 14:32:47 2017 From: slibre en natio.co.cu (Ismael L. Donis Garcia) Date: Mon, 8 May 2017 08:32:47 -0400 Subject: [Lazarus-es] Como puedo eliminar todos los registros de un mendataset sin tener que recorrerlo? References: Message-ID: <18017C894F2F4DDA9A2D8CBF8477A7FB@natio.co.cu> Ok. Perfecto. Saludos Reiterados ======== | ISMAEL | ======== Devuan User : http://distrowatch.com/table.php?distribution=devuan WebSite: sisconge.byethost15.com ----- Original Message ----- From: Martin Gomez via Lazarus-es To: Spanish version of Lazarus List Cc: Martin Gomez Sent: Saturday, May 06, 2017 8:11 PM Subject: Re: [Lazarus-es] Como puedo eliminar todos los registros de un mendataset sin tener que recorrerlo? 2017-05-06 19:36 GMT-03:00 Jesus Reyes A. via Lazarus-es : Uno podría pensar que clear(false) o clear debería hacerlo.... ​Así es como funciona. Dataset.Clear(False) mantiene los Fields, si le pasas True de lo deja totalmente virgen​ (será útil si usas un solo MemDataset para muchas funciones, para mi es un engorro, siempre uso False) NOTA: Clear cierra el Dataset, luego de llamar ese método hay que hacer un Open. -- ​Most good programmers do programming not because they expect to get paid or get adulation by the public, but because it is fun to program.​ ​Linus Torvalds ------------------------------------------------------------------------------ _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus-ide.org http://lists.lazarus-ide.org/listinfo/lazarus-es ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From r.bidegain en gmail.com Mon May 8 15:10:57 2017 From: r.bidegain en gmail.com (Rafael Bidegain) Date: Mon, 8 May 2017 10:10:57 -0300 Subject: [Lazarus-es] glyphs para botones In-Reply-To: References: Message-ID: El día 30 de abril de 2017, 18:59, Jesus Reyes A. via Lazarus-es escribió: > Lazarus tiene es su página de reconocimientos (Ayuda->Acerca de > Lazarus->Reconocimientos) éstos enlaces: > > http://www.famfamfam.com/lab/icons/silk/ > http://tango.freedesktop.org > http://p.yusukekamiyamane.com > > Me parece que el sitio tango no esta disponible en estos momentos.... > > > Jesus Reyes A. Gracias!! -- Rafael Bidegain Ya que los cuerdos no hablan, hablará el loco. (The Fool, Padraic Pearse) # yo quiero educación libre. ¡YA! From r.bidegain en gmail.com Sat May 13 04:14:16 2017 From: r.bidegain en gmail.com (Rafael Bidegain) Date: Fri, 12 May 2017 23:14:16 -0300 Subject: [Lazarus-es] buscar texto en TRichMemo Message-ID: Hola a todos. Estoy haciendo unas pruebas con TRichMemo. encontré el componente en http://wiki.freepascal.org/RichMemo. necesito buscar un texto y posteriormente reemplazarlo pero en la búsqueda ya tengo inconvenientes, el procedimiento es el siguiente. procedure TForm1.Button1Click(Sender: TObject); var i : integer; begin i := RichMemo1.Search(Edit1.Text, 0, length(Edit1.Text), soWholeWord); ShowMessage(IntToStr(i)); end; el error está en soWholeWord y es el siguiente: unit1.pas(67,71) Error: Incompatible type for arg no. 4: Got "TSearchOption", expected "TSearchOptions" será un error en el código del componente? -- Rafael Bidegain Ya que los cuerdos no hablan, hablará el loco. (The Fool, Padraic Pearse) # yo quiero educación libre. ¡YA! From javierjait en yahoo.com Sat May 13 13:16:51 2017 From: javierjait en yahoo.com (Javier Jait) Date: Sat, 13 May 2017 08:16:51 -0300 Subject: [Lazarus-es] buscar texto en TRichMemo In-Reply-To: References: Message-ID: <000001d2cbda$6d4ede40$47ec9ac0$@yahoo.com> Probá entre corchetes. i := RichMemo1.Search(Edit1.Text, 0, length(Edit1.Text), [soWholeWord]); Saludos -----Mensaje original----- De: Lazarus-es [mailto:lazarus-es-bounces en lists.lazarus-ide.org] En nombre de Rafael Bidegain via Lazarus-es Enviado el: viernes, 12 de mayo de 2017 23:14 Para: Spanish version of Lazarus List CC: Rafael Bidegain Asunto: [Lazarus-es] buscar texto en TRichMemo Hola a todos. Estoy haciendo unas pruebas con TRichMemo. encontré el componente en http://wiki.freepascal.org/RichMemo. necesito buscar un texto y posteriormente reemplazarlo pero en la búsqueda ya tengo inconvenientes, el procedimiento es el siguiente. procedure TForm1.Button1Click(Sender: TObject); var i : integer; begin i := RichMemo1.Search(Edit1.Text, 0, length(Edit1.Text), soWholeWord); ShowMessage(IntToStr(i)); end; el error está en soWholeWord y es el siguiente: unit1.pas(67,71) Error: Incompatible type for arg no. 4: Got "TSearchOption", expected "TSearchOptions" será un error en el código del componente? -- Rafael Bidegain Ya que los cuerdos no hablan, hablará el loco. (The Fool, Padraic Pearse) # yo quiero educación libre. ¡YA! _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus-ide.org http://lists.lazarus-ide.org/listinfo/lazarus-es From r.bidegain en gmail.com Sat May 13 18:52:37 2017 From: r.bidegain en gmail.com (Rafael Bidegain) Date: Sat, 13 May 2017 13:52:37 -0300 Subject: [Lazarus-es] buscar texto en TRichMemo In-Reply-To: <000001d2cbda$6d4ede40$47ec9ac0$@yahoo.com> References: <000001d2cbda$6d4ede40$47ec9ac0$@yahoo.com> Message-ID: Hola Si javier, así funciona. quedó así la línea, también tenía error en el tercer parámetro. i := RichMemo1.Search(Edit1.Text, 0, RichMemo1.GetTextLen, [soWholeWord]); otra opción que probé y también funciona es la siguiente. var opt: TSearchOptions; begin opt:= []; include(opt, soWholeWord); i := RichMemo1.Search(Edit1.Text, 0, RichMemo1.GetTextLen, opt); El día 13 de mayo de 2017, 8:16, Javier Jait via Lazarus-es escribió: > Probá entre corchetes. > > i := RichMemo1.Search(Edit1.Text, 0, length(Edit1.Text), [soWholeWord]); > > Saludos > > -----Mensaje original----- > De: Lazarus-es [mailto:lazarus-es-bounces en lists.lazarus-ide.org] En nombre de Rafael Bidegain via Lazarus-es > Enviado el: viernes, 12 de mayo de 2017 23:14 > Para: Spanish version of Lazarus List > CC: Rafael Bidegain > Asunto: [Lazarus-es] buscar texto en TRichMemo > > Hola a todos. > > Estoy haciendo unas pruebas con TRichMemo. > encontré el componente en http://wiki.freepascal.org/RichMemo. > > necesito buscar un texto y posteriormente reemplazarlo pero en la búsqueda ya tengo inconvenientes, el procedimiento es el siguiente. > > procedure TForm1.Button1Click(Sender: TObject); var > i : integer; > begin > i := RichMemo1.Search(Edit1.Text, 0, length(Edit1.Text), soWholeWord); > ShowMessage(IntToStr(i)); > end; > > el error está en soWholeWord y es el siguiente: > > unit1.pas(67,71) Error: Incompatible type for arg no. 4: Got "TSearchOption", expected "TSearchOptions" > > será un error en el código del componente? > -- > Rafael Bidegain > > Ya que los cuerdos no hablan, hablará el loco. > (The Fool, Padraic Pearse) > > # yo quiero educación libre. ¡YA! > _______________________________________________ > Lazarus-es mailing list > Lazarus-es en lists.lazarus-ide.org > http://lists.lazarus-ide.org/listinfo/lazarus-es > > _______________________________________________ > Lazarus-es mailing list > Lazarus-es en lists.lazarus-ide.org > http://lists.lazarus-ide.org/listinfo/lazarus-es -- Rafael Bidegain Ya que los cuerdos no hablan, hablará el loco. (The Fool, Padraic Pearse) # yo quiero educación libre. ¡YA! From r.bidegain en gmail.com Sat May 13 19:01:58 2017 From: r.bidegain en gmail.com (Rafael Bidegain) Date: Sat, 13 May 2017 14:01:58 -0300 Subject: [Lazarus-es] =?utf-8?q?reducir_tama=C3=B1o_de_la_ventana_de_codig?= =?utf-8?q?o=2E?= Message-ID: Hola bueno, esto es vergonzoso. Pero me molesta tanto no poder solucionarlo que tengo que preguntar. Desde ayer no puedo reducir el tamaño de la ventana donde escribo código en pascal. Si puedo reducir y aumentar la ventana de los formularios, también de la ventana principal del ide. Con el inspector de objetos pasa algo diferente no lo puedo reducir a lo que yo quiera. parece que tiene un minimo de ancho y alto para reducir y después de eso no lo puedo reducir. Si puedo minimizarlo o ocultarlo. Pero lo que realmente me preocupa es la ventana de código ya que actualmente está casi maximizada y solamente puedo ver esa ventana. si puedo minimizarla y maximizarla (al maximizar aumenta de tamaño solo algunos milimetros.) versión 1.6 + dfsg-1 fecha 2017-05-12 version FPC: 3.0.0 revision SVN: debian-package 1.6+dfsg-1 x86_64-linux-gtk 2 nota: ayer instalé trichmemo y compilé el ide. gracias por las sugerencias. -- Rafael Bidegain Ya que los cuerdos no hablan, hablará el loco. (The Fool, Padraic Pearse) # yo quiero educación libre. ¡YA! From r.bidegain en gmail.com Sun May 14 04:16:30 2017 From: r.bidegain en gmail.com (Rafael Bidegain) Date: Sat, 13 May 2017 23:16:30 -0300 Subject: [Lazarus-es] =?utf-8?q?reducir_tama=C3=B1o_de_la_ventana_de_codig?= =?utf-8?q?o=2E?= In-Reply-To: References: Message-ID: hola a todos. Encontré una solución. En mi home tengo un directorio .lazarus lo renombré a .lazaro y ejecuté lazarus-ide eso solucionó el problema. espero que le sirva a otro. saludos! El día 13 de mayo de 2017, 14:01, Rafael Bidegain escribió: > Hola > > bueno, esto es vergonzoso. Pero me molesta tanto no poder solucionarlo > que tengo que preguntar. > > Desde ayer no puedo reducir el tamaño de la ventana donde escribo > código en pascal. > > Si puedo reducir y aumentar la ventana de los formularios, también de > la ventana principal del ide. > > Con el inspector de objetos pasa algo diferente no lo puedo reducir a > lo que yo quiera. parece que tiene un minimo de ancho y alto para > reducir y después de eso no lo puedo reducir. Si puedo minimizarlo o > ocultarlo. > > Pero lo que realmente me preocupa es la ventana de código ya que > actualmente está casi maximizada y solamente puedo ver esa ventana. > si puedo minimizarla y maximizarla (al maximizar aumenta de tamaño > solo algunos milimetros.) > > versión 1.6 + dfsg-1 > fecha 2017-05-12 > version FPC: 3.0.0 > revision SVN: debian-package 1.6+dfsg-1 > x86_64-linux-gtk 2 > > nota: ayer instalé trichmemo y compilé el ide. > > gracias por las sugerencias. > -- > Rafael Bidegain > > Ya que los cuerdos no hablan, hablará el loco. > (The Fool, Padraic Pearse) > > # yo quiero educación libre. ¡YA! -- Rafael Bidegain Ya que los cuerdos no hablan, hablará el loco. (The Fool, Padraic Pearse) # yo quiero educación libre. ¡YA! From slibre en natio.co.cu Tue May 23 18:23:39 2017 From: slibre en natio.co.cu (Ismael L. Donis Garcia) Date: Tue, 23 May 2017 12:23:39 -0400 Subject: [Lazarus-es] Error External SIGSEGV al asignar valor de propiedad Message-ID: <827EC91BED2240C5A05282EA86C886E4@natio.co.cu> Tengo un formulario que tiene una propiedad pública: public { public declarations } property salvar: boolean write setsalvar; procedure Tfrecep.setsalvar(AValue: boolean); begin bvalida:=AValue; end; El cual llama otro formulario de la siguiente forma: with Tfimprec.Create(nil) do try asignarnum:=strtoint(snorec); entidad:=sentidad; Showmodal; finally Free; end; Cuando desde el formalario Tfimprec trato de asignarle un valor a la propiedad salvar me da dicho error el cual no encuentro la posible causa. procedure Tfimprec.cmdcerrarClick(Sender: TObject); begin frecep.salvar:=true; Self.Close; end; Al alguien de ustedes le ha pasado esto? En caso afirmativo como lo han solucionado? Desde ya Gracias ======== | ISMAEL | ======== Devuan User : http://distrowatch.com/table.php?distribution=devuan WebSite: http://sisconge.byethost15.com ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From slibre en natio.co.cu Tue May 23 18:23:39 2017 From: slibre en natio.co.cu (Ismael L. Donis Garcia) Date: Tue, 23 May 2017 12:23:39 -0400 Subject: [Lazarus-es] Error External SIGSEGV al asignar valor de propiedad Message-ID: <827EC91BED2240C5A05282EA86C886E4@natio.co.cu> Tengo un formulario que tiene una propiedad pública: public { public declarations } property salvar: boolean write setsalvar; procedure Tfrecep.setsalvar(AValue: boolean); begin bvalida:=AValue; end; El cual llama otro formulario de la siguiente forma: with Tfimprec.Create(nil) do try asignarnum:=strtoint(snorec); entidad:=sentidad; Showmodal; finally Free; end; Cuando desde el formalario Tfimprec trato de asignarle un valor a la propiedad salvar me da dicho error el cual no encuentro la posible causa. procedure Tfimprec.cmdcerrarClick(Sender: TObject); begin frecep.salvar:=true; Self.Close; end; Al alguien de ustedes le ha pasado esto? En caso afirmativo como lo han solucionado? Desde ya Gracias ======== | ISMAEL | ======== Devuan User : http://distrowatch.com/table.php?distribution=devuan WebSite: http://sisconge.byethost15.com ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From maximiliano.duarte en gmail.com Wed May 24 19:29:08 2017 From: maximiliano.duarte en gmail.com (Maxi) Date: Wed, 24 May 2017 14:29:08 -0300 Subject: [Lazarus-es] Error External SIGSEGV al asignar valor de propiedad In-Reply-To: <827EC91BED2240C5A05282EA86C886E4@natio.co.cu> References: <827EC91BED2240C5A05282EA86C886E4@natio.co.cu> Message-ID: El objeto ya no existe le hiciste free. Despues del showmodal El 23 de mayo de 2017, 13:23, Ismael L. Donis Garcia via Lazarus-es < lazarus-es en lists.lazarus-ide.org> escribió: > Tengo un formulario que tiene una propiedad pública: > > public > { public declarations } > property salvar: boolean write setsalvar; > > procedure Tfrecep.setsalvar(AValue: boolean); > begin > bvalida:=AValue; > end; > > El cual llama otro formulario de la siguiente forma: > > with Tfimprec.Create(nil) do > try > asignarnum:=strtoint(snorec); > entidad:=sentidad; > Showmodal; > finally > Free; > end; > Cuando desde el formalario Tfimprec trato de asignarle un valor a la > propiedad salvar me da dicho error el cual no encuentro la posible causa. > > procedure Tfimprec.cmdcerrarClick(Sender: TObject); > begin > frecep.salvar:=true; > Self.Close; > end; > > Al alguien de ustedes le ha pasado esto? En caso afirmativo como lo han > solucionado? > > > Desde ya Gracias > ======== > | ISMAEL | > ======== > Devuan User : http://distrowatch.com/table.php?distribution=devuan > WebSite: http:// > sisconge.byethost15.com > > _______________________________________________ > Lazarus-es mailing list > Lazarus-es en lists.lazarus-ide.org > http://lists.lazarus-ide.org/listinfo/lazarus-es > > -- El que pregunta aprende, y el que contesta aprende a responder. No a la obsolecencia programada: http://www.rtve.es/noticias/20110104/productos-consumo-duran-cada-vez-menos/392498.shtml Linux User #495070 http://domonetic.com/blog ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From slibre en natio.co.cu Wed May 24 20:51:28 2017 From: slibre en natio.co.cu (Ismael L. Donis Garcia) Date: Wed, 24 May 2017 14:51:28 -0400 Subject: [Lazarus-es] Error External SIGSEGV al asignar valor depropiedad References: <827EC91BED2240C5A05282EA86C886E4@natio.co.cu> Message-ID: <1571A15BF55C46618408ACFB51A43BC9@natio.co.cu> Si existe el problema ocurre cuando desde un formlario llamo a otro con Showmodal y ese otro llama a otro con Showmodal también Cuando desde el último llamado quiero coger un valor del anterior me da el error. Osea Application.Initialize; Application.CreateForm(TForm1, Form1); Application.Run; Desde TForm1 Form2.Showmodal; y desde Form2 Form3.Showmodal; Ahora si en Form3 pregunto por ejemplo: if form2.edit1.text = 'xx' then // aqui suena el error Prueba creando un proyecto con 3 formularios: Pon en el primero: -------- unit Unit1; {$mode objfpc}{$H+} interface uses Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls; type { TForm1 } TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); private { private declarations } public { public declarations } end; var Form1: TForm1; implementation uses Unit2; {$R *.lfm} { TForm1 } procedure TForm1.Button1Click(Sender: TObject); begin with TForm2.Create(nil) do try Showmodal; finally Free; end; end; end. -------- Pon en el segundo: -------- unit Unit2; {$mode objfpc}{$H+} interface uses Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls; type { TForm2 } TForm2 = class(TForm) Button1: TButton; Edit1: TEdit; procedure Button1Click(Sender: TObject); private { private declarations } public { public declarations } end; var Form2: TForm2; implementation uses Unit3; {$R *.lfm} { TForm2 } procedure TForm2.Button1Click(Sender: TObject); begin with TForm3.Create(nil) do try Showmodal; finally Free; end; end; end. -------- Pon en el tercero: -------- unit Unit3; {$mode objfpc}{$H+} interface uses Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls; type { TForm3 } TForm3 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); private { private declarations } bvalida: boolean; public { public declarations } end; var Form3: TForm3; implementation uses Unit2; {$R *.lfm} { TForm3 } procedure TForm3.Button1Click(Sender: TObject); begin if Form2.Edit1.Text='xx' then bvalida:=true; end; end. -------- Saludos Cordiales ======== | ISMAEL | ======== Devuan User : http://distrowatch.com/table.php?distribution=devuan WebSite: http://sisconge.byethost15.com ----- Original Message ----- From: Maxi via Lazarus-es To: Spanish version of Lazarus List Cc: Maxi Sent: Wednesday, May 24, 2017 1:29 PM Subject: Re: [Lazarus-es] Error External SIGSEGV al asignar valor depropiedad El objeto ya no existe le hiciste free. Despues del showmodal El 23 de mayo de 2017, 13:23, Ismael L. Donis Garcia via Lazarus-es escribió: Tengo un formulario que tiene una propiedad pública: public { public declarations } property salvar: boolean write setsalvar; procedure Tfrecep.setsalvar(AValue: boolean); begin bvalida:=AValue; end; El cual llama otro formulario de la siguiente forma: with Tfimprec.Create(nil) do try asignarnum:=strtoint(snorec); entidad:=sentidad; Showmodal; finally Free; end; Cuando desde el formalario Tfimprec trato de asignarle un valor a la propiedad salvar me da dicho error el cual no encuentro la posible causa. procedure Tfimprec.cmdcerrarClick(Sender: TObject); begin frecep.salvar:=true; Self.Close; end; Al alguien de ustedes le ha pasado esto? En caso afirmativo como lo han solucionado? Desde ya Gracias _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus-ide.org http://lists.lazarus-ide.org/listinfo/lazarus-es -- El que pregunta aprende, y el que contesta aprende a responder. No a la obsolecencia programada: http://www.rtve.es/noticias/20110104/productos-consumo-duran-cada-vez-menos/392498.shtml Linux User #495070 http://domonetic.com/blog ------------------------------------------------------------------------------ _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus-ide.org http://lists.lazarus-ide.org/listinfo/lazarus-es ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From iv.mesa.prg en gmail.com Wed May 24 21:20:35 2017 From: iv.mesa.prg en gmail.com (=?UTF-8?B?SXbDoW4g?=) Date: Wed, 24 May 2017 21:20:35 +0200 Subject: [Lazarus-es] Error External SIGSEGV al asignar valor depropiedad In-Reply-To: <1571A15BF55C46618408ACFB51A43BC9@natio.co.cu> References: <827EC91BED2240C5A05282EA86C886E4@natio.co.cu> <1571A15BF55C46618408ACFB51A43BC9@natio.co.cu> Message-ID: Por la forma que creas los forms, no se inicializan las variables form2 y form3. Usa el procedimiento de applicaton para crearlos. El 24 may. 2017 8:50 p. m., "Ismael L. Donis Garcia via Lazarus-es" < lazarus-es en lists.lazarus-ide.org> escribió: > Si existe el problema ocurre cuando desde un formlario llamo a otro con > Showmodal y ese otro llama a otro con Showmodal también > > Cuando desde el último llamado quiero coger un valor del anterior me da el > error. > > Osea > > Application.Initialize; > Application.CreateForm(TForm1, Form1); > Application.Run; > Desde TForm1 > > Form2.Showmodal; > > y desde Form2 > > Form3.Showmodal; > > Ahora si en Form3 pregunto por ejemplo: > > if form2.edit1.text = 'xx' then // aqui suena el error > > > Prueba creando un proyecto con 3 formularios: > Pon en el primero: > -------- > unit Unit1; > > {$mode objfpc}{$H+} > > interface > > uses > Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, > StdCtrls; > > type > > { TForm1 } > > TForm1 = class(TForm) > Button1: TButton; > procedure Button1Click(Sender: TObject); > private > { private declarations } > public > { public declarations } > end; > > var > Form1: TForm1; > > implementation > uses > Unit2; > > {$R *.lfm} > > { TForm1 } > > procedure TForm1.Button1Click(Sender: TObject); > begin > with TForm2.Create(nil) do > try > Showmodal; > finally > Free; > end; > end; > > end. > -------- > > Pon en el segundo: > -------- > unit Unit2; > > {$mode objfpc}{$H+} > > interface > > uses > Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, > StdCtrls; > > type > > { TForm2 } > > TForm2 = class(TForm) > Button1: TButton; > Edit1: TEdit; > procedure Button1Click(Sender: TObject); > private > { private declarations } > public > { public declarations } > end; > > var > Form2: TForm2; > > implementation > uses > Unit3; > > {$R *.lfm} > > { TForm2 } > > procedure TForm2.Button1Click(Sender: TObject); > begin > with TForm3.Create(nil) do > try > Showmodal; > finally > Free; > end; > end; > > end. > -------- > > Pon en el tercero: > -------- > unit Unit3; > > {$mode objfpc}{$H+} > > interface > > uses > Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, > StdCtrls; > > type > > { TForm3 } > > TForm3 = class(TForm) > Button1: TButton; > procedure Button1Click(Sender: TObject); > private > { private declarations } > bvalida: boolean; > public > { public declarations } > end; > > var > Form3: TForm3; > > implementation > uses > Unit2; > > {$R *.lfm} > > { TForm3 } > > procedure TForm3.Button1Click(Sender: TObject); > begin > if Form2.Edit1.Text='xx' then > bvalida:=true; > > end; > > end. > -------- > > Saludos Cordiales > ======== > | ISMAEL | > ======== > Devuan User : http://distrowatch.com/table.php?distribution=devuan > WebSite: http:// > sisconge.byethost15.com > > ----- Original Message ----- > *From:* Maxi via Lazarus-es > *To:* Spanish version of Lazarus List > *Cc:* Maxi > *Sent:* Wednesday, May 24, 2017 1:29 PM > *Subject:* Re: [Lazarus-es] Error External SIGSEGV al asignar valor > depropiedad > > El objeto ya no existe le hiciste free. > Despues del showmodal > > El 23 de mayo de 2017, 13:23, Ismael L. Donis Garcia via Lazarus-es < > lazarus-es en lists.lazarus-ide.org> escribió: > >> Tengo un formulario que tiene una propiedad pública: >> >> public >> { public declarations } >> property salvar: boolean write setsalvar; >> >> procedure Tfrecep.setsalvar(AValue: boolean); >> begin >> bvalida:=AValue; >> end; >> >> El cual llama otro formulario de la siguiente forma: >> >> with Tfimprec.Create(nil) do >> try >> asignarnum:=strtoint(snorec); >> entidad:=sentidad; >> Showmodal; >> finally >> Free; >> end; >> Cuando desde el formalario Tfimprec trato de asignarle un valor a la >> propiedad salvar me da dicho error el cual no encuentro la posible causa. >> >> procedure Tfimprec.cmdcerrarClick(Sender: TObject); >> begin >> frecep.salvar:=true; >> Self.Close; >> end; >> >> Al alguien de ustedes le ha pasado esto? En caso afirmativo como lo han >> solucionado? >> >> >> Desde ya Gracias >> >> >> _______________________________________________ >> Lazarus-es mailing list >> Lazarus-es en lists.lazarus-ide.org >> http://lists.lazarus-ide.org/listinfo/lazarus-es >> >> > > > -- > El que pregunta aprende, y el que contesta aprende a responder. > > No a la obsolecencia programada: http://www.rtve.es/noticias/ > 20110104/productos-consumo-duran-cada-vez-menos/392498.shtml > > Linux User #495070 > http://domonetic.com/blog > > ------------------------------ > > _______________________________________________ > Lazarus-es mailing list > Lazarus-es en lists.lazarus-ide.org > http://lists.lazarus-ide.org/listinfo/lazarus-es > > > _______________________________________________ > Lazarus-es mailing list > Lazarus-es en lists.lazarus-ide.org > http://lists.lazarus-ide.org/listinfo/lazarus-es > > ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From maximiliano.duarte en gmail.com Wed May 24 21:20:46 2017 From: maximiliano.duarte en gmail.com (Maxi) Date: Wed, 24 May 2017 16:20:46 -0300 Subject: [Lazarus-es] Error External SIGSEGV al asignar valor depropiedad In-Reply-To: <1571A15BF55C46618408ACFB51A43BC9@natio.co.cu> References: <827EC91BED2240C5A05282EA86C886E4@natio.co.cu> <1571A15BF55C46618408ACFB51A43BC9@natio.co.cu> Message-ID: Pero para poder llamar al form 2 debes crear primero, pero se quedaria atascado haste que termine el showmodal. Y al salir ya el objeto no existe. si quieres ese comportamiento deben estar creados antes de intentar acceder a alguna propiedad. El 24 de mayo de 2017, 15:51, Ismael L. Donis Garcia via Lazarus-es < lazarus-es en lists.lazarus-ide.org> escribió: > Si existe el problema ocurre cuando desde un formlario llamo a otro con > Showmodal y ese otro llama a otro con Showmodal también > > Cuando desde el último llamado quiero coger un valor del anterior me da el > error. > > Osea > > Application.Initialize; > Application.CreateForm(TForm1, Form1); > Application.Run; > Desde TForm1 > > Form2.Showmodal; > > y desde Form2 > > Form3.Showmodal; > > Ahora si en Form3 pregunto por ejemplo: > > if form2.edit1.text = 'xx' then // aqui suena el error > > > Prueba creando un proyecto con 3 formularios: > Pon en el primero: > -------- > unit Unit1; > > {$mode objfpc}{$H+} > > interface > > uses > Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, > StdCtrls; > > type > > { TForm1 } > > TForm1 = class(TForm) > Button1: TButton; > procedure Button1Click(Sender: TObject); > private > { private declarations } > public > { public declarations } > end; > > var > Form1: TForm1; > > implementation > uses > Unit2; > > {$R *.lfm} > > { TForm1 } > > procedure TForm1.Button1Click(Sender: TObject); > begin > with TForm2.Create(nil) do > try > Showmodal; > finally > Free; > end; > end; > > end. > -------- > > Pon en el segundo: > -------- > unit Unit2; > > {$mode objfpc}{$H+} > > interface > > uses > Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, > StdCtrls; > > type > > { TForm2 } > > TForm2 = class(TForm) > Button1: TButton; > Edit1: TEdit; > procedure Button1Click(Sender: TObject); > private > { private declarations } > public > { public declarations } > end; > > var > Form2: TForm2; > > implementation > uses > Unit3; > > {$R *.lfm} > > { TForm2 } > > procedure TForm2.Button1Click(Sender: TObject); > begin > with TForm3.Create(nil) do > try > Showmodal; > finally > Free; > end; > end; > > end. > -------- > > Pon en el tercero: > -------- > unit Unit3; > > {$mode objfpc}{$H+} > > interface > > uses > Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, > StdCtrls; > > type > > { TForm3 } > > TForm3 = class(TForm) > Button1: TButton; > procedure Button1Click(Sender: TObject); > private > { private declarations } > bvalida: boolean; > public > { public declarations } > end; > > var > Form3: TForm3; > > implementation > uses > Unit2; > > {$R *.lfm} > > { TForm3 } > > procedure TForm3.Button1Click(Sender: TObject); > begin > if Form2.Edit1.Text='xx' then > bvalida:=true; > > end; > > end. > -------- > > Saludos Cordiales > ======== > | ISMAEL | > ======== > Devuan User : http://distrowatch.com/table.php?distribution=devuan > WebSite: http:// > sisconge.byethost15.com > > ----- Original Message ----- > *From:* Maxi via Lazarus-es > *To:* Spanish version of Lazarus List > *Cc:* Maxi > *Sent:* Wednesday, May 24, 2017 1:29 PM > *Subject:* Re: [Lazarus-es] Error External SIGSEGV al asignar valor > depropiedad > > El objeto ya no existe le hiciste free. > Despues del showmodal > > El 23 de mayo de 2017, 13:23, Ismael L. Donis Garcia via Lazarus-es < > lazarus-es en lists.lazarus-ide.org> escribió: > >> Tengo un formulario que tiene una propiedad pública: >> >> public >> { public declarations } >> property salvar: boolean write setsalvar; >> >> procedure Tfrecep.setsalvar(AValue: boolean); >> begin >> bvalida:=AValue; >> end; >> >> El cual llama otro formulario de la siguiente forma: >> >> with Tfimprec.Create(nil) do >> try >> asignarnum:=strtoint(snorec); >> entidad:=sentidad; >> Showmodal; >> finally >> Free; >> end; >> Cuando desde el formalario Tfimprec trato de asignarle un valor a la >> propiedad salvar me da dicho error el cual no encuentro la posible causa. >> >> procedure Tfimprec.cmdcerrarClick(Sender: TObject); >> begin >> frecep.salvar:=true; >> Self.Close; >> end; >> >> Al alguien de ustedes le ha pasado esto? En caso afirmativo como lo han >> solucionado? >> >> >> Desde ya Gracias >> >> >> _______________________________________________ >> Lazarus-es mailing list >> Lazarus-es en lists.lazarus-ide.org >> http://lists.lazarus-ide.org/listinfo/lazarus-es >> >> > > > -- > El que pregunta aprende, y el que contesta aprende a responder. > > No a la obsolecencia programada: http://www.rtve.es/noticias/ > 20110104/productos-consumo-duran-cada-vez-menos/392498.shtml > > Linux User #495070 > http://domonetic.com/blog > > ------------------------------ > > _______________________________________________ > Lazarus-es mailing list > Lazarus-es en lists.lazarus-ide.org > http://lists.lazarus-ide.org/listinfo/lazarus-es > > > _______________________________________________ > Lazarus-es mailing list > Lazarus-es en lists.lazarus-ide.org > http://lists.lazarus-ide.org/listinfo/lazarus-es > > -- El que pregunta aprende, y el que contesta aprende a responder. No a la obsolecencia programada: http://www.rtve.es/noticias/20110104/productos-consumo-duran-cada-vez-menos/392498.shtml Linux User #495070 http://domonetic.com/blog ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From iv.mesa.prg en gmail.com Wed May 24 21:38:18 2017 From: iv.mesa.prg en gmail.com (=?UTF-8?Q?Iv=c3=a1n_Mesa?=) Date: Wed, 24 May 2017 21:38:18 +0200 Subject: [Lazarus-es] Error External SIGSEGV al asignar valor depropiedad In-Reply-To: References: <827EC91BED2240C5A05282EA86C886E4@natio.co.cu> <1571A15BF55C46618408ACFB51A43BC9@natio.co.cu> Message-ID: <669e432f-e73d-1b8e-5402-35760924fd50@gmail.com> Tienes que crear los formularios con la fórmula Application.CreateForm (TForm2, form2). Tal como los creas (With TForm2.Create(...)) no podrás acceder a sus datos desde fuera de with, ya que la variable Form2 no se inicializa en ningún sitio. Para trabajar con datos entre formularios, yo te recomiendo en uso de propiedades públicas: En el form3: public Property datodeotroform :String..... Cuando creas el form, antes del show: desde el form2: with Tfrom3.create(self)) ... datodeotroform := self.datoform2.Text; showmodal; self.datoform2.text := datodeotroform; //esto sería un ejemplo para recuperar un dato modificado en form3 free; ... etc. Esta es la mejor forma, aunque pueda parecer que necesitas más código, pero te permitirá usar el dato incluso si el form2 se destruyera antes que el form3 (en tu caso como es showmodal no ocurrirá pero en otras ocasiones producirá quebraderos de cabeza). Es sólo una recomendación, yo desde que lo hago así, tengo cero problemas con objetos que no existen y trato de acceder a ellos. Abrazos, Iván Mesa. El 24/05/2017 a las 21:20, Maxi via Lazarus-es escribió: > Pero para poder llamar al form 2 debes crear primero, pero se quedaria > atascado haste que termine el showmodal. > Y al salir ya el objeto no existe. si quieres ese comportamiento deben > estar creados antes de intentar acceder a alguna propiedad. > > > > El 24 de mayo de 2017, 15:51, Ismael L. Donis Garcia via Lazarus-es > > escribió: > > Si existe el problema ocurre cuando desde un formlario llamo a > otro con Showmodal y ese otro llama a otro con Showmodal también > Cuando desde el último llamado quiero coger un valor del anterior > me da el error. > Osea > Application.Initialize; > Application.CreateForm(TForm1, Form1); > Application.Run; > Desde TForm1 > Form2.Showmodal; > y desde Form2 > Form3.Showmodal; > Ahora si en Form3 pregunto por ejemplo: > if form2.edit1.text = 'xx' then // aqui suena el error > Prueba creando un proyecto con 3 formularios: > Pon en el primero: > -------- > unit Unit1; > {$mode objfpc}{$H+} > interface > uses > Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, > StdCtrls; > type > { TForm1 } > TForm1 = class(TForm) > Button1: TButton; > procedure Button1Click(Sender: TObject); > private > { private declarations } > public > { public declarations } > end; > var > Form1: TForm1; > implementation > uses > Unit2; > {$R *.lfm} > { TForm1 } > procedure TForm1.Button1Click(Sender: TObject); > begin > with TForm2.Create(nil) do > try > Showmodal; > finally > Free; > end; > end; > end. > -------- > Pon en el segundo: > -------- > unit Unit2; > {$mode objfpc}{$H+} > interface > uses > Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, > StdCtrls; > type > { TForm2 } > TForm2 = class(TForm) > Button1: TButton; > Edit1: TEdit; > procedure Button1Click(Sender: TObject); > private > { private declarations } > public > { public declarations } > end; > var > Form2: TForm2; > implementation > uses > Unit3; > {$R *.lfm} > { TForm2 } > procedure TForm2.Button1Click(Sender: TObject); > begin > with TForm3.Create(nil) do > try > Showmodal; > finally > Free; > end; > end; > end. > -------- > Pon en el tercero: > -------- > unit Unit3; > {$mode objfpc}{$H+} > interface > uses > Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, > StdCtrls; > type > { TForm3 } > TForm3 = class(TForm) > Button1: TButton; > procedure Button1Click(Sender: TObject); > private > { private declarations } > bvalida: boolean; > public > { public declarations } > end; > var > Form3: TForm3; > implementation > uses > Unit2; > {$R *.lfm} > { TForm3 } > procedure TForm3.Button1Click(Sender: TObject); > begin > if Form2.Edit1.Text='xx' then > bvalida:=true; > end; > end. > -------- > Saludos Cordiales > ======== > | ISMAEL | > ======== > Devuan User : http://distrowatch.com/table.php?distribution=devuan > > WebSite: http:// > sisconge.byethost15.com > > > ----- Original Message ----- > *From:* Maxi via Lazarus-es > > *To:* Spanish version of Lazarus List > > *Cc:* Maxi > *Sent:* Wednesday, May 24, 2017 1:29 PM > *Subject:* Re: [Lazarus-es] Error External SIGSEGV al asignar > valor depropiedad > > El objeto ya no existe le hiciste free. > Despues del showmodal > > El 23 de mayo de 2017, 13:23, Ismael L. Donis Garcia via > Lazarus-es > escribió: > > Tengo un formulario que tiene una propiedad pública: > public > { public declarations } > property salvar: boolean write setsalvar; > procedure Tfrecep.setsalvar(AValue: boolean); > begin > bvalida:=AValue; > end; > El cual llama otro formulario de la siguiente forma: > with Tfimprec.Create(nil) do > try > asignarnum:=strtoint(snorec); > entidad:=sentidad; > Showmodal; > finally > Free; > end; > Cuando desde el formalario Tfimprec trato de asignarle un > valor a la propiedad salvar me da dicho error el cual no > encuentro la posible causa. > procedure Tfimprec.cmdcerrarClick(Sender: TObject); > begin > frecep.salvar:=true; > Self.Close; > end; > Al alguien de ustedes le ha pasado esto? En caso > afirmativo como lo han solucionado? > Desde ya Gracias > > _______________________________________________ > Lazarus-es mailing list > Lazarus-es en lists.lazarus-ide.org > > http://lists.lazarus-ide.org/listinfo/lazarus-es > > > > > > -- > El que pregunta aprende, y el que contesta aprende a responder. > > No a la obsolecencia programada: > http://www.rtve.es/noticias/20110104/productos-consumo-duran-cada-vez-menos/392498.shtml > > > Linux User #495070 > http://domonetic.com/blog > > ------------------------------------------------------------------------ > _______________________________________________ > Lazarus-es mailing list > Lazarus-es en lists.lazarus-ide.org > > http://lists.lazarus-ide.org/listinfo/lazarus-es > > > > _______________________________________________ > Lazarus-es mailing list > Lazarus-es en lists.lazarus-ide.org > > http://lists.lazarus-ide.org/listinfo/lazarus-es > > > > > > -- > El que pregunta aprende, y el que contesta aprende a responder. > > No a la obsolecencia programada: > http://www.rtve.es/noticias/20110104/productos-consumo-duran-cada-vez-menos/392498.shtml > > Linux User #495070 > http://domonetic.com/blog > > > _______________________________________________ > Lazarus-es mailing list > Lazarus-es en lists.lazarus-ide.org > http://lists.lazarus-ide.org/listinfo/lazarus-es ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From slibre en natio.co.cu Wed May 24 21:51:02 2017 From: slibre en natio.co.cu (Ismael L. Donis Garcia) Date: Wed, 24 May 2017 15:51:02 -0400 Subject: [Lazarus-es] Error External SIGSEGV al asignar valor depropiedad References: <827EC91BED2240C5A05282EA86C886E4@natio.co.cu> <1571A15BF55C46618408ACFB51A43BC9@natio.co.cu> Message-ID: <56CD285E808F40C4BECFC7BE7658C38D@natio.co.cu> Si quiero que se quede como tu dices atascado hasta que termine el Showmodal Y tu dices que no lo creo? No se crea cuando digo: TForm2.Create(nil) Si no se crea como es que se muestra? De algo si tienes razón Ivan y es algo que no entiendo. Si alguien me lo pudiera explicar más. Ya que yo nunca he trabajado con delphi y soy bastante nuevo en Lazarus De la siguiente forma no da error: Application.CreateForm(TForm2, Form2); with Form2 do try Showmodal; finally Free; end; Y sin envargo de la siguiente forma si da error: with TForm2.Create(nil) do try Showmodal; finally Free; end; Saludos Reiterados ======== | ISMAEL | ======== Devuan User : http://distrowatch.com/table.php?distribution=devuan WebSite: http://sisconge.byethost15.com ----- Original Message ----- From: Maxi via Lazarus-es To: Spanish version of Lazarus List Cc: Maxi Sent: Wednesday, May 24, 2017 3:20 PM Subject: Re: [Lazarus-es] Error External SIGSEGV al asignar valor depropiedad Pero para poder llamar al form 2 debes crear primero, pero se quedaria atascado haste que termine el showmodal. Y al salir ya el objeto no existe. si quieres ese comportamiento deben estar creados antes de intentar acceder a alguna propiedad. El 24 de mayo de 2017, 15:51, Ismael L. Donis Garcia via Lazarus-es escribió: Si existe el problema ocurre cuando desde un formlario llamo a otro con Showmodal y ese otro llama a otro con Showmodal también Cuando desde el último llamado quiero coger un valor del anterior me da el error. Osea Application.Initialize; Application.CreateForm(TForm1, Form1); Application.Run; Desde TForm1 Form2.Showmodal; y desde Form2 Form3.Showmodal; Ahora si en Form3 pregunto por ejemplo: if form2.edit1.text = 'xx' then // aqui suena el error Prueba creando un proyecto con 3 formularios: Pon en el primero: -------- unit Unit1; {$mode objfpc}{$H+} interface uses Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls; type { TForm1 } TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); private { private declarations } public { public declarations } end; var Form1: TForm1; implementation uses Unit2; {$R *.lfm} { TForm1 } procedure TForm1.Button1Click(Sender: TObject); begin with TForm2.Create(nil) do try Showmodal; finally Free; end; end; end. -------- Pon en el segundo: -------- unit Unit2; {$mode objfpc}{$H+} interface uses Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls; type { TForm2 } TForm2 = class(TForm) Button1: TButton; Edit1: TEdit; procedure Button1Click(Sender: TObject); private { private declarations } public { public declarations } end; var Form2: TForm2; implementation uses Unit3; {$R *.lfm} { TForm2 } procedure TForm2.Button1Click(Sender: TObject); begin with TForm3.Create(nil) do try Showmodal; finally Free; end; end; end. -------- Pon en el tercero: -------- unit Unit3; {$mode objfpc}{$H+} interface uses Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls; type { TForm3 } TForm3 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); private { private declarations } bvalida: boolean; public { public declarations } end; var Form3: TForm3; implementation uses Unit2; {$R *.lfm} { TForm3 } procedure TForm3.Button1Click(Sender: TObject); begin if Form2.Edit1.Text='xx' then bvalida:=true; end; end. -------- Saludos Cordiales ======== | ISMAEL | ======== Devuan User : http://distrowatch.com/table.php?distribution=devuan WebSite: http://sisconge.byethost15.com ----- Original Message ----- From: Maxi via Lazarus-es To: Spanish version of Lazarus List Cc: Maxi Sent: Wednesday, May 24, 2017 1:29 PM Subject: Re: [Lazarus-es] Error External SIGSEGV al asignar valor depropiedad El objeto ya no existe le hiciste free. Despues del showmodal El 23 de mayo de 2017, 13:23, Ismael L. Donis Garcia via Lazarus-es escribió: Tengo un formulario que tiene una propiedad pública: public { public declarations } property salvar: boolean write setsalvar; procedure Tfrecep.setsalvar(AValue: boolean); begin bvalida:=AValue; end; El cual llama otro formulario de la siguiente forma: with Tfimprec.Create(nil) do try asignarnum:=strtoint(snorec); entidad:=sentidad; Showmodal; finally Free; end; Cuando desde el formalario Tfimprec trato de asignarle un valor a la propiedad salvar me da dicho error el cual no encuentro la posible causa. procedure Tfimprec.cmdcerrarClick(Sender: TObject); begin frecep.salvar:=true; Self.Close; end; Al alguien de ustedes le ha pasado esto? En caso afirmativo como lo han solucionado? Desde ya Gracias _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus-ide.org http://lists.lazarus-ide.org/listinfo/lazarus-es -- El que pregunta aprende, y el que contesta aprende a responder. No a la obsolecencia programada: http://www.rtve.es/noticias/20110104/productos-consumo-duran-cada-vez-menos/392498.shtml Linux User #495070 http://domonetic.com/blog -------------------------------------------------------------------------- _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus-ide.org http://lists.lazarus-ide.org/listinfo/lazarus-es _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus-ide.org http://lists.lazarus-ide.org/listinfo/lazarus-es -- El que pregunta aprende, y el que contesta aprende a responder. No a la obsolecencia programada: http://www.rtve.es/noticias/20110104/productos-consumo-duran-cada-vez-menos/392498.shtml Linux User #495070 http://domonetic.com/blog ------------------------------------------------------------------------------ _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus-ide.org http://lists.lazarus-ide.org/listinfo/lazarus-es ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: From jcuello en artextrading.com Thu May 25 10:14:44 2017 From: jcuello en artextrading.com (Jose Antonio Cuello) Date: Thu, 25 May 2017 10:14:44 +0200 (CEST) Subject: [Lazarus-es] Error External SIGSEGV al asignar valor de propiedad In-Reply-To: <827EC91BED2240C5A05282EA86C886E4@natio.co.cu> References: <827EC91BED2240C5A05282EA86C886E4@natio.co.cu> Message-ID: <754763037.613364.1495700084968.JavaMail.zimbra@artextrading.com> Hola, la forma de crear el objeto es correcta. Creo que el problema está en que usas dentro de la clase Tfimprec la variable frecep que se supone que es del tipo Tfrecep pero no le asignas el valor que lo enlaza con el formulario padre. Deberías tener una variable o property dentro del formulario hijo que recoja el puntero al padre. Te pongo un ejemplo reducido, si no lo ves claro dime cosas. Un saludo En Tfimprec : type Tfimpec private FParent: Tfrecep; public property parent: Tfrecep read FParent write FParent; end; procedure Tfimprec.cmdcerrarClick(Sender: TObject); begin Self.Parent.salvar := true; Self.Close; end; En la llamada desde Tfrecep: with Tfimprec.Create(nil) do try asignarnum:=strtoint(snorec); entidad:=sentidad; parent := Self; Showmodal; finally Free; end; De: "Spanish version of Lazarus List" Para: "Spanish version of Lazarus List" , "Spanish version of Lazarus List" CC: "Ismael L. Donis Garcia" Enviados: Martes, 23 de Mayo 2017 18:23:39 Asunto: [Lazarus-es] Error External SIGSEGV al asignar valor de propiedad Tengo un formulario que tiene una propiedad pública: public { public declarations } property salvar: boolean write setsalvar; procedure Tfrecep.setsalvar(AValue: boolean); begin bvalida:=AValue; end; El cual llama otro formulario de la siguiente forma: with Tfimprec.Create(nil) do try asignarnum:=strtoint(snorec); entidad:=sentidad; Showmodal; finally Free; end; Cuando desde el formalario Tfimprec trato de asignarle un valor a la propiedad salvar me da dicho error el cual no encuentro la posible causa. procedure Tfimprec.cmdcerrarClick(Sender: TObject); begin frecep.salvar:=true; Self.Close; end; Al alguien de ustedes le ha pasado esto? En caso afirmativo como lo han solucionado? Desde ya Gracias ======== | ISMAEL | ======== Devuan User : [ http://distrowatch.com/table.php?distribution=devuan | http://distrowatch.com/table.php?distribution=devuan ] WebSite: [ http://distrowatch.com/table.php?distribution=devuan ] [ http://sisconge.byethost15.com/ | http:// ] sisconge.byethost15.com _______________________________________________ Lazarus-es mailing list Lazarus-es en lists.lazarus-ide.org http://lists.lazarus-ide.org/listinfo/lazarus-es ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: