PDA

Ver la Versión Completa : Carga de fichero en un RichEdit


Tonio
29-07-2003, 17:28:52
Hace un tiempo hice una pregunta referente a éste tema, no se si me expliqué bien.

Yo deseo cargar un fichero, de unas 32000 líneas, en un RichEdit, haciéndolo con LoadFromfile tarda, en mi ordenador, 1 minuto.
La pregunta es: ¿Ese tiempo es normal? y dejo de andar dándole vueltas, o hay otro método, que yo no sé, digo esto porque he 'jugado' con Streams y me tarda más, lo he hecho con ReadLn, etc y tarda muchisimo más, y yo no se más métodos.
Así que si hay uno más rápido ruego pro lo menos las líneas maestras del procedure que lo hace. Y si no lo hay también, así dejo de comerme el coco.
Lo he intentado en un campo memo y algo me falló, lo dejé. También me sirve que me digan que cabe en él o que si sirve para eso, hablo del campo memo, porque si es así lo sigo intentando hasta que lo consiga.
Uso tablas Paradox. Delphi 6.
Gracias de antemano.
Un saludo.
Tonio

__marcsc
29-07-2003, 17:34:27
Hola,

porqué no pruebas estos componentes?

http://synedit.sourceforge.net

Están pensados para ser un editor de código, pero son mucho más eficientes que los RichEdit normales...

A ver qué tal... :rolleyes:

Tonio
30-07-2003, 07:23:37
Gracias por la respuesta.

He bajado los componentes que me dices y al compilar la unit SynKey.pas me da el siguiente error:

[Fatal Error] SynEdit.pas(1): Program or unit 'E:\JulioP\Synedit\Source\SynEdit.pas' recursively uses itself

Los uses que trae la Unit son:

En interface

uses
SysUtils,
Classes,
{$IFDEF SYN_CLX}
Qt,
Types,
QControls,
QGraphics,
QForms,
QStdCtrls,
QExtCtrls,
Math,
{$ELSE}
Controls,
Graphics,
Forms,
StdCtrls,
ExtCtrls,
Windows,
Messages,
{$ENDIF}
{$IFDEF SYN_MBCSSUPPORT}
Imm,
{$ENDIF}
SynEditTypes,
SynEditKeyConst,
SynEditMiscProcs,
SynEditMiscClasses,
SynEditTextBuffer,
SynEditKeyCmds,
SynEditSearch,
SynEditHighlighter,
SynEditKbdHandler,
{$IFDEF SYN_CLX}
kTextDrawer
{$ELSE}
SynTextDrawer
{$ENDIF}

En implementation

{$R SynEdit.res}

uses
{$IFDEF SYN_CLX}
QStdActns,
QClipbrd,
{$ELSE}
{$IFDEF SYN_COMPILER_4_UP}
StdActns,
{$ENDIF}
Clipbrd,
ShellAPI,
{$ENDIF}
SynEditStrConst;

Sobra alguno, ya he dicho que uso Delphi 6.
Gracias de antemano y perdón si es mi gran ignorancia.
Un saludo.
Tonio.

__marcsc
30-07-2003, 08:22:38
Has bajado la última versión estable o alguna de las versiones en desarrollo? Es que la verdad no me suena nada este error...

Creo que la última versión estable es la 1.1, que tiene fecha del 12 de julio.