Archív konference Delphi

Zpět na výběr roku archívu nebo přejít na fulltextové vyhledávání v konferenci.

parsovani stringu

[*] Emresz Tom� <Tomas.Emresz(zv)bsp(tec)cz> - 6.8.2002 11:36:53

Pouzij regulerni vyrazy (muzes pouzit I pro overeni ktery typ prikazu jsi dostal i pro rozhozeni jednotlivych parametru)
Tomas

-----Original Message-----
From: Zdenek Stepanek [mailto:zstepanek(zv)atlas(tec)cz]
Sent: Tuesday, August 06, 2002 10:34 AM
To: delphi-l(zv)clexpert(tec)cz
Subject: parsovani stringu


Zdravim

Nedavno jsem se ptal jak osetrit padani pri FileExists na sitovy soubor, odpoved jsem nedostal. Ted uz to nepotrebuju, udelam to jinak (a lepe). Po siti budu vysilat stringy podobne temto "subscribe;123.456.123.456;Zdenek" a "unsubscribe;123.456.123.456;Zdenek". Jenze se mi nedari tyto stringy rozparsovat. Prohlizel jsem formatovaci funkce v sysutils, ale vysledku jsem se nedobral. Nejdriv bych potreboval ziskat prvni cast a pokud to bude SUBSCRIBE nebo UNSUBSCRIBE, tak potom zbyle dva. IP adresa mi staci jako obycejny string. Tato parsovaci funkce bude parsovat vsechny stringy prijate ze site, je to program na bazi chatu, takze do te funkce budou vstupovat ruzne stringy se stredniky i bez nich. Jinymy slovy, v prvni fazi potrebuji ziskat string do prvniho stredniku. (muze byt i s tim strednikem). Muzete mi s tim nekdo poradit?

Diky
Zdenek

parsovani stringu

[*] Daniel Frantik <frantik(zv)telpro(tec)cz> - 6.8.2002 10:42:36


//orizne "s" az k "sep" a vrati oriznutou cast jako "result"
function GetStr(Sep:string; var s:string):string;
var p:Integer;
begin
p:=Pos(Sep,S);
if p>0 then
begin
Result:=Copy(S,1,p-1);
Delete(S,1,p+Length(sep)-1);
end
else
begin
Result:=S;
S:='';
end;
end;

Danik

>ruzne stringy se stredniky i bez nich. Jinymy slovy, v prvni fazi potrebuji
>ziskat string do prvniho stredniku. (muze byt i s tim strednikem). Muzete
mi
>s tim nekdo poradit?

>Diky
>Zdenek

parsovani stringu

[*] Jane�ek Michael <michael.janecek(zv)spar-cr(tec)cz> - 6.8.2002 12:00:29

Zdar, zkus to takle ...

Procedure parse(s: string);
Var retezec,parsed1,parsed2,parsed3:string;
begin
Retezec:=s+';'; //kde s je unsubscribe;123.456.123.456;Zdenek
parsed1:=copy(retezec, 0, pos(';', retezec)-1);
retezec:=copy(retezec, pos(';', retezec)+1, length(retezec));
parsed2:=copy(retezec, 0, pos(';', retezec)-1);
retezec:=copy(retezec, pos(';', retezec)+1, length(retezec));
parsed3:=copy(retezec, 0, pos(';', retezec)-1);

// je to pras�ck�, ale takle to prost� d�l�m j� :-))

End;
Michael Jane�ek
--------------------------------------------------------------
SPAR �esk� obchodn� spole�nost s r.o.
Programmer / Delphi developer
Tel. 02 / 67 155 156
Fax. 02 / 67 155 119
E-mail: michael.janecek(zv)spar-cr(tec)cz
http://www.interspar(tec)cz



-----Original Message-----
From: Zdenek Stepanek [mailto:zstepanek(zv)atlas(tec)cz]
Sent: Tuesday, August 06, 2002 10:34 AM
To: delphi-l(zv)clexpert(tec)cz
Subject: parsovani stringu


Zdravim

Nedavno jsem se ptal jak osetrit padani pri FileExists na sitovy soubor, odpoved jsem nedostal. Ted uz to nepotrebuju, udelam to jinak (a lepe). Po siti budu vysilat stringy podobne temto "subscribe;123.456.123.456;Zdenek" a "unsubscribe;123.456.123.456;Zdenek". Jenze se mi nedari tyto stringy rozparsovat. Prohlizel jsem formatovaci funkce v sysutils, ale vysledku jsem se nedobral. Nejdriv bych potreboval ziskat prvni cast a pokud to bude SUBSCRIBE nebo UNSUBSCRIBE, tak potom zbyle dva. IP adresa mi staci jako obycejny string. Tato parsovaci funkce bude parsovat vsechny stringy prijate ze site, je to program na bazi chatu, takze do te funkce budou vstupovat ruzne stringy se stredniky i bez nich. Jinymy slovy, v prvni fazi potrebuji ziskat string do prvniho stredniku. (muze byt i s tim strednikem). Muzete mi s tim nekdo poradit?

Diky
Zdenek

Delphi for .NET compiler preview

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 6.8.2002 12:38:09

http://community.borland.com/article/0,1410,28972,00.html

Petr Vones

parsovani stringu

[*] Peter Vlkovic <vlkovic(zv)minv.sk> - 06.8.2002 13:27:49

Ahoj,

ak chces mozes pouzit napriklad taketo funkcie:

//**********************************************************************
FUNCTION GetWord ( const Line: String; AItem: integer; Delimiter: Char
): string;
// vezme urcitu polozku z retazca Line, v ktorom su
// jednotlive polozky oddelene oddelovacom Delimiter,
// ak polozka s danym poradovym cislom neexistuje,
// vrati prazdny retazec
// Pozor, AItem sa indexuje od 0 !
var
p1, p2: integer;
i: integer;
begin
p2 := 0; // vychodiskova hodnota
i := 0; // zaciname od prveho slova
REPEAT
// vyhlada najblizsi delimiter
p1 := p2 + 1;
p2 := PosFrom ( Delimiter, Line, p1 );
if p2 = 0 then // sme na konci (na konci nemusi byt delimiter
begin
if i < AItem then
begin
Result := '';
Exit;
end;
p2 := Length ( Line ) + 1;
Break;
end;
Inc ( i ); // pocitadlo, na ktorej item prave sme
// kym sa nedostaneme na pozadovanu Item
UNTIL i > AItem;
Result := Copy ( Line, p1, p2 - p1 );
end;

//**********************************************************************
FUNCTION CountWords ( const Line: string; Delimiter: Char ): Integer;
// vrati pocet poloziek v retazci Line oddelenych delimiterom
var
i: integer;
Len: integer;
begin
Result := 0;
Len := Length ( Line );
if Len = 0 then
Exit;
if Line[Len] <> Delimiter then
Inc ( Result );
for i := 1 to Len do
if Line[i] = Delimiter then
Inc ( Result );
end;


-------
Vlkovic

parsovani stringu

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 6.8.2002 13:32:40

From: "Zdenek Stepanek" <zstepanek(zv)atlas(tec)cz>
> Nedavno jsem se ptal jak osetrit padani pri FileExists na sitovy soubor,
> odpoved jsem nedostal. Ted uz to nepotrebuju, udelam to jinak (a lepe). Po
> siti budu vysilat stringy podobne temto "subscribe;123.456.123.456;Zdenek" a
> "unsubscribe;123.456.123.456;Zdenek". Jenze se mi nedari tyto stringy

Pokud jde o retezce oddelene nejakym oddelovacem, v tomto pripade ';' tak
muzes pouzit TStringList. Podivej se na vlastnosti TStrings.Delimiter a
TStrings.DelimitedText

Petr Vones

Kniha o IB/FB v cestine

[*] Ludek ZITA <konference(zv)sales(tec)cz> - 6.8.2002 13:54:49

Zdravim.
Pro inspiraci (co se tyce obsahu) doporucuji knihu "Naucte se MySQL za 21
dni"
Myslim, ze neco podobneho o IB/FB by bylo zajimave.

Pouze bych vice rozvedl prime pouziti v programovacich prostredich - nejlepe
v Delphi :) resp. primo konkretni priklady pouziti ruznych sad komponent
pro pristup k IB.

Prakticke ukazky reseni a prace s transakcemi by take neskodily.

Re[2]: parsovani stringu

[*] Roland Turcan <rolo(zv)sedas.sk> - 6.8.2002 14:02:56

<<< 6. 8. 2002 14:02 - Petr Vones "pvones(zv)mbox.vol(tec)cz" >>>
PV> Podivej se na vlastnosti TStrings.Delimiter a
PV> TStrings.DelimitedText

Ja to neviem najst v Delphi 5, som slepy ?

--
Best regards, TRoland

Kniha o IB/FB v cestine

[*] Kalus Jozef Ing. <jozef.kalus(zv)spordat.sk> - 6.8.2002 14:23:17

Zdravim,

mne vyhovuje viac prikladov(kodov) ako obsiahly popis, z prikladu vidno viac
ako sa da pochopit z popisu.

inak urovnou by som ju skor uvital v oblasti "Mistrovstvi v...." :o) to by
bolo super :o)

joka

parsovani stringu

[*] Robert Fujak <robof(zv)inmail.sk> - 6.8.2002 14:32:42

Teraz som potreboval nieco podobne takze je to cerstve bez uprav, ale malo
by to fungovat.
Alebo sa pozri do kodov TQuery.ParseSQL;

procedure TForm1.Nacitaj(var Hodnoty: TStringList; Value:string;
DelimitedChar, StringChar: char; TrimField: boolean);
{
Funkcia na rozlo�enie re�azca do StringList-u. Polozka=Riadok
e-mail: lrsoftware(zv)stonline.sk
}
var
i, j, sDlzka: integer;
StringStart: boolean;
s, sTemp: string;
h: array of string;
begin
j := 0;
sTemp := '';
StringStart := False;
s := Value;
sDlzka := length(s);
if not(sDlzka = 0) then begin
for i:=1 to sDlzka do begin
if (s[i] = StringChar) and (not StringStart) then begin
StringStart := True;
sTemp := sTemp;
end else begin
if ((s[i] = DelimitedChar) and (not StringStart))or (sDlzka = i)
then begin
if sdlzka = i then
if StringStart then
sTemp := sTemp
else
sTemp := sTemp + s[i]
else
sTemp := sTemp;
Inc(j);
SetLength(H,j);
H[j-1] := sTemp;
sTemp := '';
end else begin
if (sDlzka > i) and (s[i] = StringChar) then begin
if (s[i+1] = DelimitedChar) then begin
StringStart := False;
end else begin
StringStart := True;
sTemp := sTemp + s[i];
end;
end else begin
sTemp := sTemp + s[i];
end;
end;
end;
end;
end;
if not(high(h)=-1) then begin
for i:=low(h) to high(h) do begin
if TrimField then
Hodnoty.Append(trim(h[i]))
else
Hodnoty.Append(h[i]);
end;
end;
end;

procedure TForm1.Button5Click(Sender: TObject);
var a:TStringList;
begin
memo1.Lines.Clear;
a:=TStringList.Create;
try
Nacitaj(a,'subscribe;123.456.123.456;Zdenek', ';', '"',True);
memo1.Lines := a; // co riadok to hodnota
memo1.Lines.Append('********************************');
memo1.Lines.Append('=celkovo poloziek: '+inttostr(a.count));
finally
FreeAndNil(a);
end;

end;----- Original Message -----
From: "Zdenek Stepanek" <zstepanek(zv)atlas(tec)cz>
To: <delphi-l(zv)clexpert(tec)cz>
Sent: Tuesday, August 06, 2002 10:34 AM
Subject: parsovani stringu


> Zdravim
>
> Nedavno jsem se ptal jak osetrit padani pri FileExists na sitovy soubor,
> odpoved jsem nedostal. Ted uz to nepotrebuju, udelam to jinak (a lepe). Po
> siti budu vysilat stringy podobne temto "subscribe;123.456.123.456;Zdenek"
a
> "unsubscribe;123.456.123.456;Zdenek". Jenze se mi nedari tyto stringy
> rozparsovat. Prohlizel jsem formatovaci funkce v sysutils, ale vysledku
jsem
> se nedobral. Nejdriv bych potreboval ziskat prvni cast a pokud to bude
> SUBSCRIBE nebo UNSUBSCRIBE, tak potom zbyle dva. IP adresa mi staci jako
> obycejny string. Tato parsovaci funkce bude parsovat vsechny stringy
prijate
> ze site, je to program na bazi chatu, takze do te funkce budou vstupovat
> ruzne stringy se stredniky i bez nich. Jinymy slovy, v prvni fazi
potrebuji
> ziskat string do prvniho stredniku. (muze byt i s tim strednikem). Muzete
mi
> s tim nekdo poradit?
>
> Diky
> Zdenek
>
>
>

Re[2x]: Dynam. prom. - List2:=List1 - reseni?

[*] Ing. Jiri SOKOL <JS-delphi(zv)seznam(tec)cz> - 06.8.2002 15:06:41

> > V programu pouzivam dyn. promenne(2x - TList). Pokud nastane urcita udalost,
>
> TList (trida) neni dynamicka promenna.

OK,OK,OK ... v TList je trida seznamu, ve kterych jsou ulozeny ukazatele na dyn. promenne (chtel
jsem se vyhnout nazvum - nepovedlo se ;o) )
>
> > pak chci do TList1:=TList2, ale to probehne OK jen poprve.
>
> Pokud ma byt smyslem naplneni jendoho seznamu polozkami z druheho tak to v
> zadnem pripade neni List1 := List2, tim se pouze priradi pointer na danou
> instanci TList.

No tak o to jsem se presne pokousel. Ok, je to spatne, ale nechapu, ze to jednou v tom "krizovem"
miste proslo a vickrat ne. V programu mam tento zapis jeste jednou, pouzivam ho ze stejnych duvodu
a to funguje 100% (akorat delam List2:=List1 a vzdycky je v List2 obsah List1 - tak jsem to chtel i
obracene a to uz neslo)

OK, cesta neni spravna. Tak jak predat obsah jednoho seznamu druhemu. Je to uz udelano nebo si
musim proceduru napsat sam? Ja uz jsem to obesel jinym zpusobem, ale hodne me to zajima.

Co trochu lidsky vysvetleno znamena: priradi pointer na danou instanci?
je to to jak jsem dany problem vyresil?
mel jsem proceduru, ktera plnila z disku List2. Kdyz jsem to potreboval, chtel jsem obsah List2
dosadit do List1.
vyresil jsem to tak, ze te procedure predavam parametr - a ted jestli jsem to pochopil - pointer na
danou instanci:
procedure NACTI (var Seznam: TList);
a pak uz jen volam podle potreby NACTI(List1); nebo NACTI(List2);
Je to tak nebo to znamena neco jineho?

>
> Petr Vones
>

Diky Jirka

Ing. Jiri Sokol, js-delphi(zv)seznam(tec)cz, +420251431187
D6ProfSP2,WinNT
amatersky
programator

______________________________________________________________________
Reklama:
Jak si stoji kurz koruny? http://kurzy.seznam(tec)cz

Delhi vs. Java

[*] Erik Salaj <winsoft(zv)stonline.sk> - 6.8.2002 15:35:18

> > aj ASP.NET web sluzieb. ASP.NET aplikacie pritom programujes rovnako
> > ako klasicke programy v Delphi, t.j. naklikas komponenty (tzv. Web
Forms)
> > a dopises kod v C# jazyku. Je to neporovnatelne s web podporou, ktora
> > je v Delphi.
>
> Tak nejak (http://www.asp.net/webmatrix/)

no, ten Web Matrix ma este dost daleko k Visual Studiu, zdaleka nema
tak komfortne prostredie, nedokaze program ladit, nema podporu projektov
atd. ale da sa pouzit, podla mna na zaciatok a na jednoduchsie veci to plne
postacuje. Visual C# je drahsi (Standard stoji 4000,- Sk, kdezto Web
Matrix je volne stiahnutelny z webu), ale na druhej strane to uz je
plnohodnotny vyvojovy prostriedok tak pre web ako aj pre WinForms
aplikacie.

Erik

Delphi 7 studio announced

[*] Karel Cibulka <KCibulka(zv)seznam(tec)cz> - 06.8.2002 15:45:04

V odpoved na informaci od P. Vonese:

http://www.borland.com/delphi/

PDF pro DataSheet, FAQ, System Req, Feature Matrix + dalsi info.

K.C.

______________________________________________________________________
Reklama:
Seznam Prace - Hledate praci nebo menite zamestnani? http://prace.seznam(tec)cz

parsovani stringu

[*] Bene� Jaroslav <JBenes(zv)cpoj(tec)cz> - 6.8.2002 15:58:32

V jake verzi Delphi to je?
Jaro B.

-----Original Message-----
From: Petr Vones [mailto:pvones(zv)mbox.vol(tec)cz]
Sent: Tuesday, August 06, 2002 1:33 PM
To: delphi-l(zv)clexpert(tec)cz
Subject: Re: parsovani stringu
Pokud jde o retezce oddelene nejakym oddelovacem, v tomto pripade ';' tak
muzes pouzit TStringList. Podivej se na vlastnosti TStrings.Delimiter a
TStrings.DelimitedText

cursor 2.

[*] Peter Surovy <psurovy(zv)uevora.pt> - 6.8.2002 15:02:57

Ahoj

cez Tools-Image Editor si do resource file
pridam cursor s nazvom Cursor1
potom vlozim kod vid Help :


const crMyCursor = 5;

procedure TForm1.FormCreate(Sender: TObject);
begin

Screen.Cursors[crMyCursor] := LoadCursor(HInstance, 'Cursor1');
Cursor := crMyCursor;
...

... no a nic sa nedeje :-(
ziadna chyba ale ani ziadny efekt
kde je problem?
Dik
Peter Surovy


Delphi 7 Announced

[*] Erik Salaj <winsoft(zv)stonline.sk> - 6.8.2002 16:04:03

> http://crn.channelsupersearch.com/news/crn/36736.asp

lacne to nie je. Visual C#, ktory obsahuje podporu pre web
a xml aku nema ani Delphi Enterprise je 10x lacnejsi ako
Delphi Pro. Vyhoda, ktoru ma Delphi poskytovat, t.j. "prejst
na .Net bez zanechania Windows prostredia" je takisto
prinajmensom diskutabilna. Nie je jednoduchsie a vyhodnejsie
nainstalovat na pocitace .Net runtime a programovat len
pre .Net ako programovat naraz pre dve (znacne odlisne)
platformy?

Erik


Re[2x]: Dynam. prom. - List2:=List1 - reseni?

[*] Pavel Gazda <Pavel.Gazda(zv)seznam(tec)cz> - 6.8.2002 16:16:16


> Co trochu lidsky vysvetleno znamena: priradi pointer na danou instanci?

Pokusim se ti to vysvetlit.

List1 ukazuje na misto v pameti PAMET1,
List2 ukazuje na misto v pameti PAMET2.

Po List1 := List2 nastane to, ze List1 i List2 ukazuji na PAMET2, mas tedy
uz jen jeden
List, ke kteremu pristupujes bud pres List1 nebo List2.

Pavel

Delphi 7 studio announced

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 6.8.2002 16:25:11

From: "Karel Cibulka" <KCibulka(zv)seznam(tec)cz>
> http://www.borland.com/delphi/
>
> PDF pro DataSheet, FAQ, System Req, Feature Matrix + dalsi info.

A dle online shopu http://shop.borland.com se bude prodavat od 21.srpna <g>

Petr Vones

Pluginy od Stonebirds pro D6

[*] Jan Naiser <tua(zv)wo(tec)cz> - 6.8.2002 16:39:26

Preji pekny den,

v D5 jsem pouzival pluginy "Compilation date and time Expert" a "Project
time log Expert" od StoneBirds. Pro D6 jsem nic podobneho nenasel a uvadena
stranka http://stonebirds.8m.com/ se zda byt mrtva. Nemate odkaz na neco
podobneho pro D6?
Pripadne, jakym zpusobem lze pro Delphi pluginy napsat a "nacpat" nebo
nejaky odkaz, kde se o tom doctu.

Predem dekuji, Honza.

Re[2]: Komponenta GifImage podruhe

[*] Ing. Jiri SOKOL <JS-delphi(zv)seznam(tec)cz> - 06.8.2002 16:44:05

> From: "Ing. Jan Dubsk�" <hdplot(zv)seznam(tec)cz>
> > > Jestli mam stejny zdrojak nevim, ale kdyz v D3 smazu vsechny
> > > Gifimage.dcu a znovu spustim (takze urcite vychazim ze soucasneho
> > > zdrojaku) tak to zkompiluje a jede OK. Kdyz totez udelam v D6, je tam
> > > ta chyba.
> >
> > > > > GIFImageK := TGIFImage.Create(Self);
> > > > >
> > > > > Program hlasi "Too many actual parameters" hned na radku 1. Co by
>
> > jak se pozna podmineny preklad detekujici D3?
>
> Nekde v kodu musi byt neco jako {$IFDEF VER100} nebo pod.
>
> Pokud to mohu shrnout ma se to takto:
> - mas DCU od komponenty TGifImage pro Delphi3, instance zakladas
> pomoci constructoru Create(AOwner: TComponent);
> - mas zdrojaky od komponenty ktera se jmenuje stejne a ktera ma jiny
> constructor Create a to bez parametru
> - pokud prelozis tyto zdrojaky pod Delphi 3, lze je prelozit a jses
> si jisty ze nikde na ceste nemas DCU od puvodni komponenty
> - pokud prelozis tyto zdrojaky pod Delphi 5, nelze je prelozit a
> hlasi to chybu "Too many actual parameters" na TGifImage.Create(Self);
>
> Podle me neco delas spatne, napr. si Delphi 3 nekde najde na ceste
> DCU od puvodni komponenty. Tezko lze uverit ze by ve zdrojacich
> byla vyhybka na konstruktoru pro ruzne verze Delphi. Nejlepsi by
> bylo kdybys poslal ty zdrojaky nebo alespon hlavicku deklarace
> TGifImage = class(Txxx) abychom mohli neco z toho vyloucit.
>
> Martin Schayna

Tak jsem zacal sledovat diskuzi a musim rict, ze s tim GifImage.pas mam podobne problemy. Ne sice
pri prekladu, ale objevi se vyjimka pri behu programu. Je to uz davno, co jsem problem resil a
nevyresil, proto ted nemuzu byt konkretnejsi.
Jedine co vim presne je to, ze pokud jsem kod prelozil v D5Ent - bylo vse OK od spusteni do
ukonceni. Kdyz jsem to prelozil v D6EntTrial dochazelo k vyjimkam pri uvolnovani promenne
TGifImage. Vyresil jsem to nejakym obchazenim, ale ted nevim presne jak.

Asi to moc nepomohlo, ale kouknu na to a zitra budu presnejsi.

Ahoj, Jirka.

Ing. Jiri Sokol, js-delphi(zv)seznam(tec)cz, +420251431187
D6ProfSP2,WinNT
amatersky
programator

______________________________________________________________________
Reklama:
Jak si stoji kurz koruny? http://kurzy.seznam(tec)cz

Pluginy od Stonebirds pro D6

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 6.8.2002 16:55:53

From: "Jan Naiser" <tua(zv)wo(tec)cz>
> Pripadne, jakym zpusobem lze pro Delphi pluginy napsat a "nacpat" nebo
> nejaky odkaz, kde se o tom doctu.

Podivej se na Open Tools API v helpu. Dale taky na:
http://www.gexperts.org/opentools/

Petr Vones

parsovani stringu

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 6.8.2002 16:56:42

From: "Roland Turcan" <rolo(zv)sedas.sk>
> Ja to neviem najst v Delphi 5, som slepy ?

Je to v Delphi 6.

Petr Vones

Zprava HDN_DIVIDERDBLCLICK u THeaderControl

[*] Jan K��ek - 6.8.2002 16:56:03

Potrebuji zjistit, kdy uzivatel udelal dblclick mezi sekcema v
THeaderControl. V MSDN jsem se docetl, ze by mela rodicovi chodit zprava
WM_NOTIFY, kde v lParam je odkaz na strukturu a v ni code by melo byt
HDN_DIVIDERDBLCLICK. V Delphi to znamena, ze by tato zprava mela prijit
primo komponente THeaderControl v podobe CN_NOTIFY. Stejne jako napr. v
THeaderControl.CNNotify zpracovavana notifikace HDN_ITEMCLICK.

Ale me ta zprava nechodi, zkousil jsem i odchyceni rovnou WM_NOTIFY u
rodice a take neprisla. Nemusi se nekde nastavit, aby THeaderControl
akceptoval dblclick? V MSDN jsem zadnou takovou zminku nenasel.

Diky Honza +

D5.01Prof, W2K

Komponenta GifImage podruhe

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 6.8.2002 16:58:07

From: "Ing. Jiri SOKOL" <JS-delphi(zv)seznam(tec)cz>
> Tak jsem zacal sledovat diskuzi a musim rict, ze s tim GifImage.pas mam
> podobne problemy. Ne sice pri prekladu, ale objevi se vyjimka pri behu

Mozna by bylo dobre zacit tim, jaka je to vlastne verze TGifImage, odkud je
stazena, jestli je to verze pro Delphi 6 atd.

Petr Vones

Dynam. prom. - List2:=List1 - reseni?

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 6.8.2002 17:03:02

From: "Ing. Jiri SOKOL" <JS-delphi(zv)seznam(tec)cz>
> a to funguje 100% (akorat delam List2:=List1 a vzdycky je v List2 obsah
> List1 - tak jsem to chtel i obracene a to uz neslo)

List2 pak pouze obsahuje instanci objektu v List1. Jinak receno, pokud uvolnis
List1 tak List2 obsahuje neplatny ukazatel. Pokud ma byt List2 *jiny* seznam a
obsahovat data ktera jsou v List1, tak je musis prekopirovat, napriklad pomoci
metody TList.Assign.

Petr Vones

Jak prodat text do WebBrowser

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 6.8.2002 17:10:41

From: "EFG developer" <developer(zv)efg(tec)cz>
> jak do komponenty WebBrowser dostanu nejaky text?
> jde mi o to, ze mam ve stringu nejaky kus html kodu a ten
> potrebuju zobrazit, proste neco jako
>
> WebBrowser.lines.add();

TWebBrowser.Document.write()

Petr Vones

cursor 2.

[*] Vaclav Krmela <krmela(zv)ustinadorlici(tec)cz> - 6.8.2002 17:24:21

> From: Peter Surovy
>
> cez Tools-Image Editor si do resource file
> pridam cursor s nazvom Cursor1
> potom vlozim kod vid Help :
>
> const crMyCursor = 5;
>
> procedure TForm1.FormCreate(Sender: TObject);
> begin
> Screen.Cursors[crMyCursor] := LoadCursor(HInstance, 'Cursor1');
> Cursor := crMyCursor;
> ...
> ... no a nic sa nedeje :-(
> ziadna chyba ale ani ziadny efekt
> kde je problem?

Zkusil bych toto:
- nedavat cursor do RES souboru projektu,
ale zalozit novy RES soubor
- v RES souboru pouzit pro pojmenovani
velka pismena: CURSOR1
- zkontrolovat, zda formular neni prekryty
nejakym prvkem, ktery ma puvodni kurzor,
napr. Panel1.Cursor := crMyCursor;

Vaclav Krmela

Jak ziskat z ActiveX controly WebBrowser zdrojovy

[*] Petr P�a <drinjones(zv)seznam(tec)cz> - 06.8.2002 18:01:02

Ahoj,

potreboval bych z TWebBrowseru ktery pouzivam ve svem programu nejak
dostat zdrojovy kod stranky, neco jako kdyz dam v prohlizeci prikaz
view/source code, pripadne kdyz to nepujde tak jak to ziskat nejak
jinac ale v synchronizaci s webbrowserem.

Diky moc,
Petr

______________________________________________________________________
Reklama:
Poctenicko pro kazdy den: http://www.novinky(tec)cz

Re[3x]: Dynam. prom. - List2:=List1 - reseni?

[*] Ing. Jiri SOKOL <JS-delphi(zv)seznam(tec)cz> - 06.8.2002 18:04:13

> > Co trochu lidsky vysvetleno znamena: priradi pointer na danou instanci?
>
> Pokusim se ti to vysvetlit.
>
> List1 ukazuje na misto v pameti PAMET1,
> List2 ukazuje na misto v pameti PAMET2.
>
> Po List1 := List2 nastane to, ze List1 i List2 ukazuji na PAMET2, mas tedy
> uz jen jeden
> List, ke kteremu pristupujes bud pres List1 nebo List2.
>
> Pavel

OK, cili obsah List2 je obsahem List1? Cili mohu do List1 dosazovat znovu co budu chtit a v List2
budou hodnoty z puvodniho List1? Nebo napr. zmena v List1 se projevi v List2 a naopak????

Ja jsem si to predstavoval jako pamet, ve ktery je OBRAZNE receno urcity "record" tridy TList (ten
v mem pripade obsahuje seznam pointeru na promenne). Myslel jsem, ze mohu udelat to, ze promenne
napr. List2 priradim ukazatel na ten urcity "record" promenne prvni napr. List1. Pak jsem doufal,
ze budu moci pracovat s List1 a nebude to mit vliv na List2.

Chapu to dobre? Jestli jo, tak zase nechapu, proc mi to nefungovalo ... :((

Diky za objasneni. Jirka

Ing. Jiri Sokol, js-delphi(zv)seznam(tec)cz, +420251431187
D6ProfSP2,WinNT
amatersky
programator

______________________________________________________________________
Reklama:
Co davaji v TV? http://tv.seznam(tec)cz

cursor 2. vyriesene

[*] Peter Surovy <psurovy(zv)uevora.pt> - 6.8.2002 17:11:14

Ahoj

----- Original Message -----
From: "Vaclav Krmela" <krmela(zv)ustinadorlici(tec)cz>
Sent: Tuesday, August 06, 2002 4:24 PM

spravna odpoved bola A:
> - nedavat cursor do RES souboru projektu,
> ale zalozit novy RES soubor
--a potom v zdrojaku projektu uviest
{$R novyresource.RES}> - v RES souboru pouzit pro pojmenovani
> velka pismena: CURSOR1
> - zkontrolovat, zda formular neni prekryty
> nejakym prvkem, ktery ma puvodni kurzor,
> napr. Panel1.Cursor := crMyCursor;
Dik
Peter

OT:Vytvoreni fontu TTF

[*] Bene� Jaroslav <JBenes(zv)cpoj(tec)cz> - 6.8.2002 18:45:41

Ahoj,
mam mirne OT.
Lze programove vytvorit font TTF? Mam dva fonty .TTF a potrebuji z nich vybrat par znaku a udelat jiny (jeden) soubor fontu. Je to mozne?
Dekuji
Jaro B.

OT:Vytvoreni fontu TTF

[*] Petr Zahradnik <clexpert(zv)clexpert(tec)cz> - 6.8.2002 18:50:34

Puvodni zprava, kterou napsal Bene� Jaroslav dne 6 Aug 2002:

> Lze programove vytvorit font TTF? Mam dva fonty .TTF a potrebuji z nich
> vybrat par znaku a udelat jiny (jeden) soubor fontu. Je to mozne? Dekuji

Jsou na to softy, hledej na webu. Takove nejjednodussi reseni je v
Corelu. Ja onehda takto delal nekomu logo do fontu.

S pozdravem
Petr Zahradnik, pocitacovy expert

=====================================================
Petr Zahradnik, Computer Laboratory
Obvodova 740/14, P.O. Box 15, 400 07 Usti nad Labem
Telefony: 047-5500610, 047-5501627, 0602-409601
Fax: 047-5511338
WWW: http://www.clexpert(tec)cz, http://www.zahradnik(tec)cz
E-Mail: clexpert(zv)clexpert(tec)cz, petr(zv)zahradnik(tec)cz
ICQ: 21215917
======================================================

Delphi a elektronicky podpis

[*] Petr K. <xdelphi(zv)seznam(tec)cz> - 6.8.2002 19:03:53

Zdravim potrebuju poradit.

Pouzivam kvalifikovany elektronicky podpis, rad bych ho pouzil i pri
odesilani email zprav z delphi
Nevite jaka komponenta je vhodna pro odesilani mailu, aby byla zprava
podepsana nainstalovanym certifikatem.

Nebo jak vytvorit zprav, ktera se mi odesle pres Outlook Express 6.

Diky Petr

Delphi 7 Announced

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 6.8.2002 19:21:41

From: "Erik Salaj" <winsoft(zv)stonline.sk>
> lacne to nie je. Visual C#, ktory obsahuje podporu pre web

Pokud jsem to dobre pochopil, tak v te cene je zaroven i Kylix 3 (ne ze by to
bylo pro vyvojare az tak dulezite, uznavam ;-) viz:
http://www.borland.com/delphi/pdf/del7_datasheet.pdf

> prinajmensom diskutabilna. Nie je jednoduchsie a vyhodnejsie
> nainstalovat na pocitace .Net runtime a programovat len
> pre .Net ako programovat naraz pre dve (znacne odlisne)
> platformy?

Jiste by bylo. Jenze GUI aplikace jsou zatim ponekud loudave (GDI+) a .NET je
prece jen jeste dost cerstva vec. Bude asi nejakou dobu trvat, nez se vyvojari
nauci uplne novy framework, nez se ten framework vyladi a taky az bude lepsi
podpora od 3rd party dodavatelu. I kdyz je pravda, ze napriklad vizualnich
komponent pro .NET neni tak malo, a to je dobre. Rozhodne by podle mne melo
byt ted Delphi for .NET pro Borland tou nejvetsi prioritou.

Petr Vones

WaveForm alias StateForm

[*] <prichy(zv)volny(tec)cz> - 6.8.2002 22:49:53

Zdravim a prosim o radu.
Potrebuju vytvorit komponentu na canvas se scrollovanim.
Bylo mi razeno, ze nejlepsi bude, abych ziskal platno s moznosti scrollovani pouzit ScrollBox.
Abych mel oboji k dispozici, napsal jsem to takhle:


uses
Windows, Messages,Graphics, SysUtils, Classes, Controls, Forms;

type
TStateForm = class(TScrollBox)
private
FPlatno: TGraphicControl ;
{ Private declarations }
protected
{ Protected declarations }
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;
{ Public declarations }
published
{ Published declarations }
end;

procedure Register;

implementation


constructor TStateForm.create (AOwner: TComponent);
begin
inherited create(AOwner);
FPlatno:=TGraphicControl.Create (Self);
FPlatno.Width:=100;
FPlatno.Height:=100;
end;

destructor TStateForm.Destroy;
begin
FPlatno.Free;
inherited Destroy;
end;

Zajima me:

1) Mohu vychazet z TScrollBox? (V knize "Mistrovstvi v Delphi 6" autori tvori edit s buttonem a vychazi z TwinControl tj.z toho co maji oba spolecneho. )

2) Cele jsem to i zkompiloval -> bez chyby - jak to, ze nemohu pouzivat canvas? (ted myslim v kodu ne komponente samotne)

3) Pomohlo by na napr. jednoduche podobne zdrojaky.Nebo link na nejake stranky (nejlepe ceske :) ).

Diky Prichy

Jak ziskat z ActiveX controly WebBrowser zdrojovy

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 6.8.2002 23:33:16

From: "Petr P�a" <drinjones(zv)seznam(tec)cz>
> potreboval bych z TWebBrowseru ktery pouzivam ve svem programu nejak
> dostat zdrojovy kod stranky, neco jako kdyz dam v prohlizeci prikaz
> view/source code, pripadne kdyz to nepujde tak jak to ziskat nejak

http://www.euromind.com/iedelphi/embeddedwb.htm

Petr Vones

Re[3x]: Dynam. prom. - List2:=List1 - reseni?

[*] Pavel Gazda <Pavel.Gazda(zv)seznam(tec)cz> - 7.8.2002 07:16:17

Po List1:=List2 :

> OK, cili obsah List2 je obsahem List1? Cili mohu do List1 dosazovat znovu
co budu chtit a v List2
> budou hodnoty z puvodniho List1?

Ne

> Nebo napr. zmena v List1 se projevi v List2 a naopak????

Presne


Pavel

Sledovani systemu po delphi 3

[*] Martin =?ISO-8859-2?Q?Nov=E1k ?= <mnk(zv)centrum(tec)cz> - 07.8.2002 07:39:42

Zdravim, chtel bych vedet, jak v D3 zjistim data o systemu. Jedna
se mi hlavne o zatizeni procesoru, cteni/zapis na HDD. Za rady
predem Dekuji. S pozdravem MNK.

--------------------
Nov� vyhled�va� pro �esk� internet www.WebFast(tec)cz - prost� najde ...

Komponenta GifImage podruhe

[*] Ing. Jan Dubsk� <hdplot(zv)seznam(tec)cz> - 07.8.2002 07:43:54

Primarne pro D6 si nebude, kdyz pod D3 jede a pod D6 ne. Domnival
jsem se ale, ze prikazy ve zdrojovem kodu jsou vzestupne kompatibilni
a ze by tedy chyba mohla byt jen v nastaveni prekladace nebo neceho
podobneho. Nebo tomu tak neni ?!

> From: "Ing. Jiri SOKOL" <JS-delphi(zv)seznam(tec)cz>
> > Tak jsem zacal sledovat diskuzi a musim rict, ze s tim GifImage.pas mam
> > podobne problemy. Ne sice pri prekladu, ale objevi se vyjimka pri behu
>
> Mozna by bylo dobre zacit tim, jaka je to vlastne verze TGifImage, odkud je
> stazena, jestli je to verze pro Delphi 6 atd.
>
> Petr Vones

______________________________________________________________________
Reklama:
Jake bude pocasi? http://pocasi.seznam(tec)cz

Delhi vs. Java

[*] Leos Urban <Leos.Urban(zv)iol(tec)cz> - 7.8.2002 07:54:16

> budu psat aplikaci, ktera se z vetsiny sklady z WWW aplikace. Rohoduji se
> mezi Javou a Delhi. Java ma sice pro mne tyto nevyhody:

Zapomnel jsi na dve velke vyhody, ktere se Ti mohou hodit v budoucnu:

1) Java bezi vsude, tj. muzes vyvijet na notebooku pod Windows a pak to dat
na Linux, AIX, Solaris, Win2000 server a ono to pobezi.

2) pokud sikovne navrhnes tridy v Jave, bez problemu pouzijes SOAP a to i z
Delphi :-)

Leos

Re[3x]: Dynam. prom. - List2:=List1 - reseni?

[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 7.8.2002 07:59:15

> > List1 ukazuje na misto v pameti PAMET1,
> > List2 ukazuje na misto v pameti PAMET2.
> >
> > Po List1 := List2 nastane to, ze List1 i List2 ukazuji na PAMET2,
> > mas tedy uz jen jeden
> > List, ke kteremu pristupujes bud pres List1 nebo List2.
> >
> > Pavel
>
> OK, cili obsah List2 je obsahem List1? Cili mohu do List1 dosazovat
> znovu co budu chtit a v List2 budou hodnoty z puvodniho List1? Nebo
> napr. zmena v List1 se projevi v List2 a naopak????

List1 a List2 jsou dva zcela samostatn�, na sob� nez�visl� seznamy a hodnota v
List1 resp. v List2 rika, na ktere adrese v pameti se nachazeji. Udelas-li

List1 := List2;

stane se to, ze nadale v pameti budou existovat oba seznamy, ale ty ztratis
informaci o tom, na jake adrese se nachazi ten prvni. Hodnoty v List1 i v List2 ted
totiz obsahuji stejny ukazatel (na jeden seznam), tj. mas "dve jmena" pro tentyz
fyzicky seznam.
Zasadnim problemem je to, ze k seznamu, na ktery puvodne ukazoval List1,
od teto chvile nemas pristup, protoze jsi ztratil informaci o adrese, kde se nachazi.
Tj. napr. ho nelze uvolnit, bude Ti zbytecne zabirat pamet. O dalsich problemech
psali kolegove: udelas-li List1.Free a nasledne List2.Free, vznikne Access Violation,
protoze se pokusis uvolnit tutez pamet dvakrat po sobe, zatimco ta instance, ke ktere
jsi prirazenim ztratil pristup, Ti bude v pameti viset dal.

David Lebeda

Komponenta GifImage podruhe

[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 7.8.2002 08:12:08

> Primarne pro D6 si nebude, kdyz pod D3 jede a pod D6 ne. Domnival jsem
> se ale, ze prikazy ve zdrojovem kodu jsou vzestupne kompatibilni a ze
> by tedy chyba mohla byt jen v nastaveni prekladace nebo neceho
> podobneho. Nebo tomu tak neni ?!

V pripade zminovanych podminenych prekladu jde o neco trochu jineho: predstav si,
ze prave ted je nejnovejsi verze D3. Ty mas komponentu GifImage a zjistis, ze veci,
ktere jsi v D2 musel slozite obchazet nebo vubec nesly realizovat, najednou v D3
jdou diky novinkam, ktere pribyly. Takze pouzijes podmineny preklad, ze pokud jde o
D3, vyuzijes jeho moznosti, zatimco jinak to pujde postaru.
No a ted prijdou D4. Pokud autor neupravi zdrojak (doplnit detekci D4), zjisti
se, ze nejde o D3 a zacne se to chovat "po staru". Nevim, jestli jde detekovat, ze
verze Delphi je vyssi nez 2, nebo jen konkretne, ze to neni 3.

Neznam GifImage, nevim, jestli jde o tento pripad, snazil jsem se popsat
princip.

David Lebeda

FB - Omezeni indexu

[*] Marek Eichler <marek.eichler(zv)seznam(tec)cz> - 7.8.2002 08:16:21

Zdravim,
nevite nekdo, jakym omezenim podlehaji indexy v FB?

Jde mi o to, ze mam dva sloupce s nasledujicim type:
CREATE DOMAIN D_SName VarChar(35) CHARACTER SET WIN1250 NOT NULL COLLATE
PXW_CSY;

a kdyz nad nima chci vytvorit index, tak mi to vyhodinasledujici hlasku:
key size exceeds implementation restriction for index XX

V dokumentaci to nikde nemuzu najit

S diky a pozdravem Marek Eichler


---
Odchoz� zpr�va neobsahuje viry.
Zkontrolov�no antivirov�m syst�mem AVG (http://www.grisoft(tec)cz).
Verze: 6.0.380 / Virov� b�ze: 213 - datum vyd�n�: 24.7.2002

Delphi 7 Announced

[*] Matavovsky Peter <matavovsky(zv)vse.sk> - 7.8.2002 07:19:34


Nie je dost dobre mozne porovnavat Visual C# .Net Standard a Delphi
professional,
MS nema v ponuke Visual C# .Net Professional len cele Visual Studio .Net
Professional,
V Visual C# Standard chyba Crystal Report.


http://msdn.microsoft.com/vcsharp/howtobuy/choosing.asp

Peter


>lacne to nie je. Visual C#, ktory obsahuje podporu pre web
>a xml aku nema ani Delphi Enterprise je 10x lacnejsi ako
>Delphi Pro. Vyhoda, ktoru ma Delphi poskytovat, t.j. "prejst
>na .Net bez zanechania Windows prostredia" je takisto
>prinajmensom diskutabilna. Nie je jednoduchsie a vyhodnejsie
>nainstalovat na pocitace .Net runtime a programovat len
>pre .Net ako programovat naraz pre dve (znacne odlisne)
>platformy?

Erik


Komponenta GifImage podruhe

[*] Vaclav Krmela <krmela(zv)ustinadorlici(tec)cz> - 7.8.2002 08:42:53

> From: Ing. Jan Dubsk�
>
> Primarne pro D6 si nebude, kdyz pod D3 jede a pod D6 ne. Domnival
> jsem se ale, ze prikazy ve zdrojovem kodu jsou vzestupne kompatibilni
> a ze by tedy chyba mohla byt jen v nastaveni prekladace nebo neceho
> podobneho. Nebo tomu tak neni ?!

Jiz nekolikrat tady padla rada, podivat se,
co vlastne pouzivas v D3 a co v D6. Udelej to.
Podle toho do pises to NENI stejna komponenta.
Prohledej disk a najdi si, kolik mas ruznych
typ� GIFIMAGE.PAS a GIFIMAGE.DCU a v jakych
adresarich. Potom zkontroluj, jak mas nastavene
v D3 a D6 Library Path.

Vaclav Krmela

Komponenta GifImage podruhe

[*] Bene� Jaroslav <JBenes(zv)cpoj(tec)cz> - 7.8.2002 09:04:43

Tam bude jiny problem.
Ja jsem pri pevodu komponent z D3 do D5 mel problemy s komponentama pro transparentni vykreslovani ci pro ruzne shade efekty a barvy pozadi. V D3 to vsecko jelo ale po temer bezproblemovem prekladu v D5 to hazelo chyby nebo access violation nebo program ruzne padal. I kdyz jsem mel zdrojaky, tak jsem to nevyresil (a treba by to slo, napriklad jsem v jednom pripade nahradil puvodniho predka v D3 jinym z D5 a cast problemu se spravila, nebo byl problem v zamene Longint za DWord, problem byl taky v pouziti stringu atp.). Nakonec jsem kvuli pracnosti tyto komponenty prestal uplne pouzivat a nahradil je jinymi (pro gify pouzivam komponent z RXLib) ostatni tridy z jinych knihoven (DTools atp).
Jaro B.

-----Original Message-----
From: Ing. Jan Dubsk� [mailto:hdplot(zv)seznam(tec)cz]
Subject: Re: Komponenta GifImage podruhe
Primarne pro D6 si nebude, kdyz pod D3 jede a pod D6 ne. Domnival
jsem se ale, ze prikazy ve zdrojovem kodu jsou vzestupne kompatibilni
a ze by tedy chyba mohla byt jen v nastaveni prekladace nebo neceho

Delphi 7 Announced

[*] Slavek Rydval <rk(zv)atrey.karlin.mff.cuni(tec)cz> - 7.8.2002 09:07:52

> lacine to nie je.
> Erik

Ahoj,

levny to opravdu neni. Mam tu cest pracovat jak s Visual Studiem .NET
(Enterpise Architect), tak s Delphi (Enterprise) a pokud porovnam
funkce, stabilitu, moznosti, kvalitu a cenu, pak Delphi je predrazeny
sunt (no flame).

Porovnej, co je v jednotlivych krabicich:
* http://msdn.microsoft.com/vstudio/howtobuy/choosing.asp
* http://www.borland(tec)cz/pr_delphi_box.php

Delphi je lehoulince nadprumerne udelatko na programovani, s VS.NETem
muzes aplikace opravdu vyvijet.

A ted cena (MS brano z http://shop.apro(tec)cz)
* VS.NET Architect Ent. 78 280 Kc s dani
* VS.NET Ent. 56 300 Kc s dani
* VS.NET Std. 33 780 Kc s dani

Oproti tomu Borland se napr. za cenu Delphi 6 Enterprise stydi a na
webu ji neuvadi (clovek si k nim musi zavolat). Navic ceny Delphi 6
jsou ted zvyhodnene, protoze Borland potrebuje vyprodat sklady
starych verzi. Ale podle americkeho Borlandu ceny Delphi 7 budou
napr. za Prof. edici $999, tedy 30 000 Kc. Cesky Borland bude
prodavat za cca 40 000 Kc (muj odhad). Naproti tomu Ent. edice
$2,999, tj. k 90 000 plus prirazka ceskeho Borladnu dalsich 10 000
Kc.


Slavek


--------------------------------------------------------
http://atrey.karlin.mff.cuni(tec)cz/~rk
--------------------------------------------------------
Udelejte to blbuvzdorne a zitra nekdo vymysli jeste vetsiho blba.

IB + primarni klic

[*] CIS <cis(zv)atlas(tec)cz> - 7.8.2002 09:10:09

HI,
stala se mi divna vec s DB a nevim cim to muze byt. Tabulku mam naplnenou
daty a najednou po pridani noveho radku s jiz existujicim prim. klicem
nehlasi chybu, normalne vetu zapise, po vymazu ji zrusi, po commit zmizne i
puvodni veta.
Kdyz zalozim uplne novou table tak to funguje v poradku.
IB 6.5, d6E, w2000.

Nevite co s tim? dik

ales

Runtime error 216 at XXXXX

[*] pilifs <pilifs(zv)seznam(tec)cz> - 7.8.2002 09:24:06

Hello Delphi,

nevite co znamena tato hlaska?
Deje se mi to dost nepravidelne pri zavirani aplikace pouzivakici
BPL. Nejak se mi ji nadari najit chybu ktera ji vyvolava.

Diky

--
Best regards,
pilifs mailto:pilifs(zv)seznam(tec)cz

FB - Omezeni indexu

[*] Pavel Cisar <pcb(zv)atlas(tec)cz> - 7.8.2002 09:55:46

Haj hou!

On 7 Aug 2002 at 8:16, Marek Eichler wrote:

> Zdravim,
> nevite nekdo, jakym omezenim podlehaji indexy v FB?
>
> Jde mi o to, ze mam dva sloupce s nasledujicim type:
> CREATE DOMAIN D_SName VarChar(35) CHARACTER SET WIN1250 NOT NULL COLLATE
> PXW_CSY;
>
> a kdyz nad nima chci vytvorit index, tak mi to vyhodinasledujici hlasku:
> key size exceeds implementation restriction for index XX

Delka klice je omezena nasledovne:

1) Vychozi maximum je 256 pro jeden sloupec, nebo 200 pro vicesloupcove
klice.

2) Za ka�dy sloupec je t�eba odecist 4 byte.

3) U multibajtovych znakovych sad (jako treba UNICODE) je treba vysledek
podelit pocte byte na znak.

4) Pokud je pouzit collate, je treba vysledek ad hoc podelit poctem byte na
zakodovani znaku (u Win1250 zhruba 2 znaky).

Vysledek udava pocet byte, kam se musi vejit data (bere se v uvahu max.
velikost sloupcu).

S pozdravem
Pavel Cisar
Mobil: 0724 281429
http://www.ibphoenix(tec)cz
Vse co potrebujete pro Firebird a InterBase

spojeni pres proxy

[*] Ladislav Fitz <ladislav.fitz(zv)kodytek(tec)cz> - 7.8.2002 09:59:23

dobry den

pro pripojeni na internet pouzivam funkci InternetAutodial, ale narazil sem
na potiz, pokud se pripojuji pres LAn nebo modem je vse OK, ale pres proxy
server mi to nahlasi, ze je pripojen, ale proxy se ani nesnazi vytacet.
nevite nekdo jak proxy server donutit aby se pripojil?

predem diky

Dlzka zobrazenia hintu

[*] <delphin(zv)centrum.sk> - 07.8.2002 10:31:51

Zdravim !

Akym sposobom mozem ovplyvnit dlzku zobrazenia hintu. V pripade,
ze mam hint moc dlhy, je problem ho cely precitat hned..
Dik

----------------------------------------------------------------
http://www.webpark.sk/novy-web.htm - Profesion�lny webhosting

Komponenta GifImage podruhe

[*] Ing. Jan Dubsk� <hdplot(zv)seznam(tec)cz> - 07.8.2002 10:34:31


> Jiz nekolikrat tady padla rada, podivat se,
> co vlastne pouzivas v D3 a co v D6. Udelej to.
> Podle toho do pises to NENI stejna komponenta.
> Prohledej disk a najdi si, kolik mas ruznych
> typ� GIFIMAGE.PAS a GIFIMAGE.DCU a v jakych
> adresarich. Potom zkontroluj, jak mas nastavene
> v D3 a D6 Library Path.
>
> Vaclav Krmela

Stejna komponenta to urcite je, protoze puvodne jsem zdrojak vubec
nemel - proto D6 nevzalo *.dcu z D3. Po ziskani zdrojaku (jen jednoho
jedineho - jiny nemam) jsem prohledal cely disk a vsechny *.dcu jsem
smazal - Gifimage.pas dal do dvou ruznych adresaru a doplnil do D3 z
jednoho a do D6 z druheho adresare. Tady chyba neni. Spis bych se
priklanel k nazoru J Benese - viz citat dole.

Honza

> Tam bude jiny problem.
> Ja jsem pri pevodu komponent z D3 do D5 mel problemy s komponentama > pro transparentni vykreslovani ci pro ruzne shade efekty a barvy > pozadi. V D3 to vsecko jelo ale po temer bezproblemovem prekladu v > D5 to hazelo chyby nebo access violation nebo program ruzne padal. I > kdyz jsem mel zdrojaky, tak jsem to nevyresil ....

______________________________________________________________________
Reklama:
Jake bude pocasi? http://pocasi.seznam(tec)cz

Out of resources

[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 7.8.2002 10:38:44

Ahoj,

mam aplikaci (vicevlaknovou), ktera zrejme chodi, tak jak by mela.
Nicmene kolegovi se stalo, ze mu po pomerne kratke dobe vznikla
hlaska Out of resources a dale se objevovalo, System nemuze najit
uvedeny soubor.

Vzhledem k tomu, ze se to stalo na W2k, me to celkem prekvapuje,
protoze:

1) Formulare nejsou nijak narocne na prostredky, radne se uvolnuji,
jakmile nejsou potreba apod.

2) Nikde neotviram zadny soubor, takze hlaska o nenalezeni
souboru je zcela zcestna.

3) Na W2k asi nepujde o skutecne vycerpani prostredku, ale opet o
nejaky zastupny problem.

Pokud aplikaci zkousim pres MemProof, neni zadny problem.

Uvedene chovani se stalo zatim jen jednou, nedari se mi ho
opakovane nasimulovat, nicmene bych se chtel zeptat, zda jste se s
necim takovym nekdo nesetkal nebo zda nemate tuchu, odkud vitr
vane.

Jak jsem zjistil, chybu System nemuze najit uvedeny soubor
produkuje i LoadCursor pri samem spusteni aplikace (hlaseni se
nezobrazi, patrne je ve VCL osetreno) v systemovych unitach
(Forms, Controls), deje se to v libovolne aplikaci. O teto chybe bych
nevedel,zachyti ji MemProof.

D5E, vyvoj na WinNT4SP4, problem vznikl na W2k

Dik.

David Lebeda

Out of resources

[*] Bene� Jaroslav <JBenes(zv)cpoj(tec)cz> - 7.8.2002 10:43:30

Tento problem mi nastal, kdyz mel resource velikost 0 (taky na Win2K). Opakovane se mi to nepodarilo nasimulovat
Jaro B.

-----Original Message-----
From: Lebeda David [mailto:david.lebeda(zv)comarr(tec)cz]
Sent: Wednesday, August 07, 2002 10:39 AM
To: delphi-l(zv)clexpert(tec)cz
Subject: Out of resources


Ahoj,

mam aplikaci (vicevlaknovou), ktera zrejme chodi, tak jak by mela.
Nicmene kolegovi se stalo, ze mu po pomerne kratke dobe vznikla
hlaska Out of resources a dale se objevovalo, System nemuze najit
uvedeny soubor.

Vzhledem k tomu, ze se to stalo na W2k, me to celkem prekvapuje,
protoze:

1) Formulare nejsou nijak narocne na prostredky, radne se uvolnuji,
jakmile nejsou potreba apod.

2) Nikde neotviram zadny soubor, takze hlaska o nenalezeni
souboru je zcela zcestna.

3) Na W2k asi nepujde o skutecne vycerpani prostredku, ale opet o
nejaky zastupny problem.

Pokud aplikaci zkousim pres MemProof, neni zadny problem.

Uvedene chovani se stalo zatim jen jednou, nedari se mi ho
opakovane nasimulovat, nicmene bych se chtel zeptat, zda jste se s
necim takovym nekdo nesetkal nebo zda nemate tuchu, odkud vitr
vane.

Jak jsem zjistil, chybu System nemuze najit uvedeny soubor
produkuje i LoadCursor pri samem spusteni aplikace (hlaseni se
nezobrazi, patrne je ve VCL osetreno) v systemovych unitach
(Forms, Controls), deje se to v libovolne aplikaci. O teto chybe bych
nevedel,zachyti ji MemProof.

D5E, vyvoj na WinNT4SP4, problem vznikl na W2k

Dik.

David Lebeda

Out of resources

[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 7.8.2002 10:51:08

> Tento problem mi nastal, kdyz mel resource velikost 0 (taky na Win2K).
> Opakovane se mi to nepodarilo nasimulovat Jaro B.
>

Ahoj,

nerozumim - slo o nejaky Tvuj vlastni resource nebo co vlastne melo velikost nula?
Ja pouzivam jako svuj resource v samostatnem res souboru pouze jednu bitmapu,
jinak je vse standardni interni zalezitost Delphi.

David Lebeda


> mam aplikaci (vicevlaknovou), ktera zrejme chodi, tak jak by mela.
> Nicmene kolegovi se stalo, ze mu po pomerne kratke dobe vznikla hlaska
> Out of resources a dale se objevovalo, System nemuze najit uvedeny
> soubor.

Runtime error 216 at XXXXX

[*] Rumcajs - konference <konrum(zv)seznam(tec)cz> - 7.8.2002 11:02:34

Jakou mas verzi Delphi? Mi to delala D4 - pry nejaka chyba vnitrni chyba.
Rumcajs
> Hello Delphi,
>
> nevite co znamena tato hlaska?
> Deje se mi to dost nepravidelne pri zavirani aplikace pouzivakici
> BPL. Nejak se mi ji nadari najit chybu ktera ji vyvolava.
>
> Diky



---
Odchoz� zpr�va neobsahuje viry.
Zkontrolov�no antivirov�m syst�mem AVG (http://www.grisoft(tec)cz).
Verze: 6.0.380 / Virov� b�ze: 213 - datum vyd�n�: 24.7.2002

Datovy typ MONEY

[*] LUKES V�clav <lukes(zv)ans(tec)cz> - 7.8.2002 11:09:04


Ahoj,

prosim o pomoc a o radu. Mam D5 Ent., Win 2000 a DTB Informix.

V INFORMIXu se vyskytuje dat. typ MONEY. Za boha nevim, jak nacpat nejaka data do sloupce s timhle typem.


Tento pokus zcela ztroskotava:

procedure TForm1.Query1AfterScroll(DataSet: TDataSet);
begin
ABC.Value := Query1.FieldByName('penize').AsFloat;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
Query1.Edit;
Query1['penize'] := ABC.Value; // TADY !!!
Query1.Post;

Query1.Active := false;
Query1.Active := true;
end;


Vasek

Dlzka zobrazenia hintu

[*] Ondrej Kelle <O.Kelle(zv)digitalpublishing.de> - 7.8.2002 11:12:40

> Akym sposobom mozem ovplyvnit dlzku zobrazenia hintu. V pripade,
> ze mam hint moc dlhy, je problem ho cely precitat hned..

Application.HintHidePause

HTH
TOndrej

Out of resources

[*] Bene� Jaroslav <JBenes(zv)cpoj(tec)cz> - 7.8.2002 11:25:14

Byl to muj resource (taky nejaky obrazek a mel velikost 0).
Jaro B.

-----Original Message-----
From: Lebeda David [mailto:david.lebeda(zv)comarr(tec)cz]
nerozumim - slo o nejaky Tvuj vlastni resource nebo co vlastne melo velikost nula?
Ja pouzivam jako svuj resource v samostatnem res souboru pouze jednu bitmapu,
jinak je vse standardni interni zalezitost Delphi.

David Lebeda

Out of resources

[*] Zbysek Hlinka <hlinka(zv)hlinka(tec)cz> - 7.8.2002 11:48:44

On 7 Aug 2002 at 10:51, Lebeda David wrote:

> > Tento problem mi nastal, kdyz mel resource velikost 0 (taky na
> > Win2K). Opakovane se mi to nepodarilo nasimulovat Jaro B.
>
> nerozumim - slo o nejaky Tvuj vlastni resource nebo co vlastne melo
> velikost nula? Ja pouzivam jako svuj resource v samostatnem res
> souboru pouze jednu bitmapu, jinak je vse standardni interni
> zalezitost Delphi.

W2k daleko lepe kontroluji spravnost oddilu v binaru, nez W9x, ktere
jsou ponekud benevolentni k ruznym nedostatkum. Zjistil jsem to
napriklad tak, ze jsem si pri lokalizaci daval do resourcu ruzne
znacky, abych vedel, ze to je ode mne. Na W9x to v pohode proslo, W2k
mi vynadaly. Predpokladam, ze tam budes mit asi nejakou chybku oproti
predepsane syntaxi, a to muze byt i v bitmape.

> > mam aplikaci (vicevlaknovou), ktera zrejme chodi, tak jak by mela.
> > Nicmene kolegovi se stalo, ze mu po pomerne kratke dobe vznikla
> > hlaska Out of resources a dale se objevovalo, System nemuze najit
> > uvedeny soubor.
>
>


S pozdravem

Zbysek Hlinka


Out of resources

[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 7.8.2002 12:11:12

> Predpokladam, ze tam budes mit asi nejakou chybku oproti
> predepsane syntaxi, a to muze byt i v bitmape.

Ahoj,

jak to zjistim? Zalozil jsem v ImageEditoru v Delphi soubor tapeta.res a ten obsahuje
jedinou bitmapu (cca 50x50 bodu). Nehlasi mi zadny problem. Jak by se dala provest
kontrola?

V dpr souboru je {$R tapeta.res}

Konstruktor spolecneho predka mych formularu pak tapetu pouziva takto:

constructor TC1ModulForm.Create(AOwner: TComponent);
begin
inherited;
bmp := TBitmap.Create;
try
bmp.LoadFromResourceName(HInstance, 'TAPETA');
except
end;
end;

Try..except je tam jen pro jistotu. Bmp je private promenna, uvolnuje se v
destruktoru. Trida bmp. se pouziva jen v metode Paint formulare.
Je neco spatne?

David Lebeda

>
> > > mam aplikaci (vicevlaknovou), ktera zrejme chodi, tak jak by mela.
> > > Nicmene kolegovi se stalo, ze mu po pomerne kratke dobe vznikla
> > > hlaska Out of resources a dale se objevovalo, System nemuze najit
> > > uvedeny soubor.

Datovy typ MONEY

[*] ing. Jan Fiala <jan.fiala(zv)iol(tec)cz> - 7.8.2002 12:26:54

ViBEZWxwaGkgamUgdHlwIEN1cnJlbmN5DQoNCi0tIA0KaW5nLiBKYW4gRmlhbGENCm1haWx0bzpq
YW4uZmlhbGFAaW9sLmN6DQoNCjcuOC4yMDAyIExVS0VTIFbhY2xhdjoNCj4gViBJTkZPUk1JWHUg
c2Ugdnlza3l0dWplIGRhdC4gdHlwIE1PTkVZLiBaYSBib2hhIG5ldmltLCBqYWsgbmFjcGF0DQo+
IG5lamFrYSBkYXRhIGRvIHNsb3VwY2UgcyB0aW1obGUgdHlwZW0u

Zprava HDN_DIVIDERDBLCLICK u THeaderControl

[*] Ondrej Kelle <O.Kelle(zv)digitalpublishing.de> - 7.8.2002 12:54:47

> Potrebuji zjistit, kdy uzivatel udelal dblclick mezi sekcema v
> THeaderControl. V MSDN jsem se docetl, ze by mela rodicovi
> chodit zprava WM_NOTIFY, kde v lParam je odkaz na strukturu
> a v ni code by melo byt HDN_DIVIDERDBLCLICK. V Delphi to
> znamena, ze by tato zprava mela prijit primo komponente
> THeaderControl v podobe CN_NOTIFY. Stejne jako napr. v
> THeaderControl.CNNotify zpracovavana notifikace HDN_ITEMCLICK.
>
> Ale me ta zprava nechodi, zkousil jsem i odchyceni rovnou WM_NOTIFY u
> rodice a take neprisla. Nemusi se nekde nastavit, aby THeaderControl
> akceptoval dblclick? V MSDN jsem zadnou takovou zminku nenasel.

Presne tak, ides na to spravne. Jedine, co potrebujes, aby to chodilo, je
pridat v konstruktore csDoubleClicks do ControlStyle.

Tu som si narychlo napisal maly test, ktory zda sa funguje:

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs,
ComCtrls, ExtCtrls;

type
TSectionDividerDblClickEvent = procedure (HeaderControl:
TCustomHeaderControl; Section: THeaderSection;
Button: TMouseButton) of object;

TCustomHeaderControlEx = class(TCustomHeaderControl)
private
FOnSectionDblClick: TCustomSectionNotifyEvent;
FOnSectionDividerDblClick: TSectionDividerDblClickEvent;

procedure CNNotify(var Message: TWMNotify); message CN_NOTIFY;
protected
procedure SectionDblClick(Section: THeaderSection); dynamic;
procedure SectionDividerDblClick(Section: THeaderSection; Button:
TMouseButton); dynamic;

property OnSectionDblClick: TCustomSectionNotifyEvent read
FOnSectionDblClick write FOnSectionDblClick;
property OnSectionDividerDblClick: TSectionDividerDblClickEvent read
FOnSectionDividerDblClick
write FOnSectionDividerDblClick;
public
constructor Create(AOwner: TComponent); override;
end;

THeaderControlEx = class(TCustomHeaderControlEx)
published
property Align default alTop;
property Anchors;
property BiDiMode;
property BorderWidth;
property DragCursor;
property DragKind;
property DragMode;
property DragReorder;
property Enabled;
property Font;
property FullDrag default True;
property HotTrack default False;
property Images;
property Constraints;
property Sections;
property ShowHint;
property Style default hsButtons;
property ParentBiDiMode;
property ParentFont;
property ParentShowHint;
property PopupMenu;
property Visible;
property OnContextPopup;
property OnCreateSectionClass;
property OnDragDrop;
property OnDragOver;
property OnEndDock;
property OnEndDrag;
property OnMouseDown;
property OnMouseMove;
property OnMouseUp;
property OnResize;
// Required for backwards compatibility with the old events
property OnDrawSection;
property OnSectionClick;
property OnSectionResize;
property OnSectionTrack;

property OnSectionDblClick;
property OnSectionDividerDblClick;
property OnSectionDrag;
property OnSectionEndDrag;
property OnStartDock;
property OnStartDrag;
end;

TForm1 = class(TForm)
procedure FormCreate(Sender: TObject);
private
FHeaderControl: THeaderControlEx;

procedure HeaderControlSectionDblClick(HeaderControl:
TCustomHeaderControl; Section: THeaderSection);
procedure HeaderControlSectionDividerDblClick(HeaderControl:
TCustomHeaderControl; Section: THeaderSection;
Button: TMouseButton);
public
end;

var
Form1: TForm1;

implementation

uses
CommCtrl;

{$R *.dfm}

{ THeaderControlEx private }

procedure TCustomHeaderControlEx.CNNotify(var Message: TWMNotify);
begin
inherited;
with PHDNotify(Message.NMHdr)^ do
case Hdr.code of
HDN_ITEMDBLCLICK:
SectionDblClick(Sections[Item]);
HDN_DIVIDERDBLCLICK:
SectionDividerDblClick(Sections[Item], TMouseButton(Button));
end;
end;

{ TCustomHeaderControlEx protected }

procedure TCustomHeaderControlEx.SectionDblClick(Section: THeaderSection);
begin
if Assigned(FOnSectionDblClick) then
FOnSectionDblClick(Self, Section);
end;

procedure TCustomHeaderControlEx.SectionDividerDblClick(Section:
THeaderSection; Button: TMouseButton);
begin
if Assigned(FOnSectionDividerDblClick) then
FOnSectionDividerDblClick(Self, Section, Button);
end;

{ TCustomHeaderControlEx public }

constructor TCustomHeaderControlEx.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
ControlStyle := ControlStyle + [csDoubleClicks];
end;

{ TForm1 event handlers }

procedure TForm1.FormCreate(Sender: TObject);
begin
FHeaderControl := THeaderControlEx.Create(Self);
FHeaderControl.Name := 'HeaderControlEx1';
FHeaderControl.Parent := Self;
FHeaderControl.DragReorder := False;
FHeaderControl.FullDrag := False;
with FHeaderControl.Sections.Add do
Text := 'Whatever';
with FHeaderControl.Sections.Add do
Text := 'Test';
with FHeaderControl.Sections.Add do
Text := 'Something';
with FHeaderControl.Sections.Add do
Text := 'happened';
FHeaderControl.OnSectionDblClick := HeaderControlSectionDblClick;
FHeaderControl.OnSectionDividerDblClick :=
HeaderControlSectionDividerDblClick;
end;

procedure TForm1.HeaderControlSectionDblClick(HeaderControl:
TCustomHeaderControl; Section: THeaderSection);
begin
with Section do
ShowMessage(Format('SectionDblClick: %d ''%s''', [Index, Text]));
end;

procedure TForm1.HeaderControlSectionDividerDblClick(HeaderControl:
TCustomHeaderControl; Section: THeaderSection;
Button: TMouseButton);
begin
with Section do
ShowMessage(Format('SectionDividerDblClick: %d ''%s'' Button %d',
[Index, Text, Integer(Button)]));
end;

end.

HTH
TOndrej

Out of resources

[*] Zbysek Hlinka <hlinka(zv)hlinka(tec)cz> - 7.8.2002 12:59:41

On 7 Aug 2002 at 12:11, Lebeda David wrote:

> > Predpokladam, ze tam budes mit asi nejakou chybku oproti
> > predepsane syntaxi, a to muze byt i v bitmape.
>
> Ahoj,
>
> jak to zjistim? Zalozil jsem v ImageEditoru v Delphi soubor tapeta.res
> a ten obsahuje jedinou bitmapu (cca 50x50 bodu). Nehlasi mi zadny
> problem. Jak by se dala provest kontrola?

1. Vyzkouset program bez volani tohoto resource.
2. Pokud chodi, vyzkouset to s jinym obrazkem, o kterem spolehlive
vis, ze nedela problemy.

> Konstruktor spolecneho predka mych formularu pak tapetu pouziva takto:
>
> constructor TC1ModulForm.Create(AOwner: TComponent);
> begin
> inherited;
> bmp := TBitmap.Create;
> try
> bmp.LoadFromResourceName(HInstance, 'TAPETA');

3. Zkontroluj, zda presne odpovida nazev obrazku, vcetne velkych
pismen.
4. Tohle si odkrokovat dovnitr metody.

> except
> end;
> end;

S pozdravem

Zbysek Hlinka


Jak prodat text do WebBrowser

[*] ing. Jan Fiala <jan.fiala(zv)iol(tec)cz> - 7.8.2002 13:05:39

6.8.2002 Petr Vones:
> From: "EFG developer" <developer(zv)efg(tec)cz>
>> jak do komponenty WebBrowser dostanu nejaky text?
>> jde mi o to, ze mam ve stringu nejaky kus html kodu a ten
>> potrebuju zobrazit, proste neco jako
>>
>> WebBrowser.lines.add();

> TWebBrowser.Document.write()

A opet pouze ve verzi D6 ?
WebBrowser z D5 zadnou takovou metodu nezna.

--
Jan Fiala
mailto:jan.fiala(zv)iol(tec)cz

Zprava HDN_DIVIDERDBLCLICK u THeaderControl

[*] Jan K��ek - 7.8.2002 13:28:27

> > Potrebuji zjistit, kdy uzivatel udelal dblclick mezi sekcema v
> > THeaderControl. V MSDN jsem se docetl, ze by mela rodicovi
> > chodit zprava WM_NOTIFY, kde v lParam je odkaz na strukturu
> > a v ni code by melo byt HDN_DIVIDERDBLCLICK. V Delphi to
> > znamena, ze by tato zprava mela prijit primo komponente
> > THeaderControl v podobe CN_NOTIFY. Stejne jako napr. v
> > THeaderControl.CNNotify zpracovavana notifikace HDN_ITEMCLICK.
> >
> > Ale me ta zprava nechodi, zkousil jsem i odchyceni rovnou
> WM_NOTIFY u
> > rodice a take neprisla. Nemusi se nekde nastavit, aby THeaderControl
> > akceptoval dblclick? V MSDN jsem zadnou takovou zminku nenasel.
>
> Presne tak, ides na to spravne. Jedine, co potrebujes, aby to
> chodilo, je
> pridat v konstruktore csDoubleClicks do ControlStyle.
>

Dik, funguje to.

Ja se spokojil s tim, ze v TControl.Create se csDoubleClicks nastavuje,
ale nevsiml jsem si, ze prozmenu v THeaderControl.Create se ControlStyle
vyprazdni (teda tak je to v D5)

Honza +

Komponenta GifImage podruhe

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 7.8.2002 13:29:13

From: "Ing. Jan Dubsk�" <hdplot(zv)seznam(tec)cz>
> Primarne pro D6 si nebude, kdyz pod D3 jede a pod D6 ne. Domnival
> jsem se ale, ze prikazy ve zdrojovem kodu jsou vzestupne kompatibilni

To sice ano, ale mohou mit jiny vyznam ci v jine verzi je treba nejakou vec
udelat trochu jinak apod. Od toho je prave podmineny preklad.

> a ze by tedy chyba mohla byt jen v nastaveni prekladace nebo neceho
> podobneho. Nebo tomu tak neni ?!

Ne, nejdrive je treba *pochopit* ten zdrojovy kod, aby se dalo kvalifikovane
rict, kde je presne problem a jak ho opravit.

Pro zacatek bych treba zkusil stahnout toto (pokud to neni ta verze ktera
nefunguje):
http://groups.yahoo.com/group/JEDI-GIFImage/files/D6%20gifimage.zip

Petr Vones

Jak prodat text do WebBrowser

[*] Ondrej Kelle <O.Kelle(zv)digitalpublishing.de> - 7.8.2002 13:34:16

> A opet pouze ve verzi D6 ?
> WebBrowser z D5 zadnou takovou metodu nezna.

WebBrowser je nezavisly od verzie Delphi.
WebBrowser.Document vracia IDispatch, cize volas metody nejakeho COM objektu
pomocou late binding. V skutocnosti mas cez vlastnost Document pristup k
implementacii interfacov IHTMLDocument, IHTMLDocument2 atd.
Prave IHTMLDocument2 ma metodu write.

HTH
TOndrej

Zprava HDN_DIVIDERDBLCLICK u THeaderControl

[*] Ondrej Kelle <O.Kelle(zv)digitalpublishing.de> - 7.8.2002 13:35:47

> Jedine, co potrebujes, aby to chodilo, je
> pridat v konstruktore csDoubleClicks do ControlStyle.

Hned po tom, ako som to poslal som zistil, ze s pravym a strednym tlacitkom
mysi to nechodi. <g>
Mam podozrenie, ze je to bug MS, ale nie som si tym isty; je mozne, ze je to
dane vo VCL a treba to nejak osetrit. Nemam velmi cas badat nad tym.
Takze oprava: ten predosly test chodi spravne iba s lavym tlacitkom mysi.
Sorry za unahlenu odpoved.

Quick workaround by mohol vyzerat nejako tak, ze si osetris spravy
WM_RBUTTONDBLCLK, WM_MBUTTONDBLCLK:

procedure TCustomHeaderControlEx.WMRButtonDblClk(var Message:
TWMRButtonDblClk);
var
Index: Integer;
Info: THDHitTestInfo;
begin
inherited;
Info.Point.X := Message.XPos;
Info.Point.Y := Message.YPos;
Index := SendMessage(Handle, HDM_HITTEST, 0, Integer((zv)Info));
if Info.Flags and HHT_ONDIVIDER <> 0 then
SectionDividerDblClick(Sections[Index], mbRight);
end;

procedure TCustomHeaderControlEx.WMMButtonDblClk(var Message:
TWMMButtonDblClk);
var
Index: Integer;
Info: THDHitTestInfo;
begin
inherited;
Info.Point.X := Message.XPos;
Info.Point.Y := Message.YPos;
Index := SendMessage(Handle, HDM_HITTEST, 0, Integer((zv)Info));
if Info.Flags and HHT_ONDIVIDER <> 0 then
SectionDividerDblClick(Sections[Index], mbMiddle);
end;

HTH
TOndrej

Dynam. prom. - List2:=List1 - reseni?

[*] Ing. Jiri SOKOL <JS-delphi(zv)seznam(tec)cz> - 07.8.2002 14:08:55

> > a to funguje 100% (akorat delam List2:=List1 a vzdycky je v List2 obsah
> > List1 - tak jsem to chtel i obracene a to uz neslo)
>
> List2 pak pouze obsahuje instanci objektu v List1. Jinak receno, pokud uvolnis
> List1 tak List2 obsahuje neplatny ukazatel. Pokud ma byt List2 *jiny* seznam a
> obsahovat data ktera jsou v List1, tak je musis prekopirovat, napriklad pomoci
> metody TList.Assign.
>
> Petr Vones

OK, jenze kdyz pouziju tohle, tak mni to neprobehne ani jednou ... :(( Zase jsem v praci, takze ted
nemuzu rict presne hlasku, kterou to pise, ale byl to nejaky invalid pointer.
Je teda spravny tento zapis?
var
List1, List2 : TList;

procedure XY;
begin
List1:=TList.Create;
List2:=TList.Create;
List1
... dosazeni hodnot
List2
... dosazeni hodnot
List1
... dispoznuti jednotlivych prvku dyn. prom., smazani prvku z List1, na zaver List1.Create
List1.Assign(List2);
end;

Cili bude v List1 obsah List2 a muzu treba uvolnit List2.free a s List1 to nic neudela?

Diky za odpoved. Jirka


Ing. Jiri Sokol, js-delphi(zv)seznam(tec)cz, +420251431187
D6ProfSP2,WinNT
amatersky
programator

______________________________________________________________________
Reklama:
Mapy Prahy, Brna a Cech najdete na http://www.mapy(tec)cz

LocalShare=True & NetDir=XXXXX - jak nastavit prog

[*] Ing. Jiri SOKOL <JS-delphi(zv)seznam(tec)cz> - 07.8.2002 14:17:44

Ahoj!

Muzete mi nekdo, prosim, blbcu-vzdorne vysvetlit (odkazat na vysvetleni) komponenty Session a
Databaze?
Da se pomoci techto komponent nastavit hodnota LocalShare:=True; a NetDir Paradoxu driveru.
Jak je to s instalaci BDE - pamatuje si nastaveni BDE pocitace, na kterem byl vytvoren setup?
(pomoci InstallShield-LimitedEdition Delphi)

Ing. Jiri Sokol, js-delphi(zv)seznam(tec)cz, +420251431187
D6ProfSP2,WinNT
amatersky programator

______________________________________________________________________
Reklama:
Mapy Prahy, Brna a Cech najdete na http://www.mapy(tec)cz

Jak prodat text do WebBrowser

[*] ing. Jan Fiala <jan.fiala(zv)iol(tec)cz> - 7.8.2002 14:22:47

A mohl bys uvest nejaky strucny priklad nebo postup, jak se na metodu
Write dostat ?

--
Jan Fiala
mailto:jan.fiala(zv)iol(tec)cz

7.8.2002 Ondrej Kelle:
> WebBrowser je nezavisly od verzie Delphi.
> WebBrowser.Document vracia IDispatch, cize volas metody nejakeho COM objektu
> pomocou late binding. V skutocnosti mas cez vlastnost Document pristup k
> implementacii interfacov IHTMLDocument, IHTMLDocument2 atd.
> Prave IHTMLDocument2 ma metodu write.

LocalShare=True & NetDir=XXXXX - jak nastavit prog

[*] ing. Jan Fiala <jan.fiala(zv)iol(tec)cz> - 7.8.2002 14:25:31

7.8.2002 Ing. Jiri SOKOL:
> Muzete mi nekdo, prosim, blbcu-vzdorne vysvetlit (odkazat na vysvetleni) komponenty Session a
> Databaze?

Session pouzivat nemusis, databaze si vytvori svoji defaultni, ke
ktere muzes pristupovat.

> Da se pomoci techto komponent nastavit hodnota LocalShare:=True; a NetDir Paradoxu driveru.

LocalShare ne. To se musi nastavit v Driveru nebo pouzit dbi funkci z
BDE (viz help k BDE v adresari .\PF\CommonFiles\Borland\BDE)

NetDir ano.

> Jak je to s instalaci BDE - pamatuje si nastaveni BDE pocitace, na kterem byl vytvoren setup?
> (pomoci InstallShield-LimitedEdition Delphi)

Mel by

--
ing. Jan Fiala
mailto:jan.fiala(zv)iol(tec)cz

Jak prodat text do WebBrowser

[*] Ondrej Kelle <O.Kelle(zv)digitalpublishing.de> - 7.8.2002 14:56:28

> A mohl bys uvest nejaky strucny priklad nebo postup, jak se na metodu
> Write dostat ?

procedure TForm1.FormCreate(Sender: TObject);
begin
WebBrowser1.Navigate('about:blank');
end;

procedure TForm1.Button1Click(Sender: TObject);
var
V: Variant;
begin
V := WebBrowser1.Document;
V.write('<html><body>Hello, world!</body></html>');
end;

HTH
TOndrej

Delphi a pristup k databazi Exchange Serveru

[*] Petr K. <xdelphi(zv)seznam(tec)cz> - 07.8.2002 15:09:21

Help me !

Potrebuju poradit, jde se z delphi pripojit na databazi outlooku,
ktera bezi na MS Exchange 2000? Pokud ano tak jak.

Diky
Petr

______________________________________________________________________
Reklama:
Poctenicko pro kazdy den: http://www.novinky(tec)cz

Komponenta GifImage podruhe

[*] Ing. Jiri SOKOL <JS-delphi(zv)seznam(tec)cz> - 07.8.2002 15:13:31

> Pro zacatek bych treba zkusil stahnout toto (pokud to neni ta verze ktera
> nefunguje):
> http://groups.yahoo.com/group/JEDI-GIFImage/files/D6%20gifimage.zip
>
> Petr Vones
>

Neslo by to bez yahoo ??? Prosiiim, nejsem schopen se tam zaregistrovat. Nevim proc, ale na kazdy
navrh LogName to hlasi, ze uz existuje - a to jsem zkousel brutalni kombinace, ktere by snad nikoho
nenapadly.

Diky, Jirka.

Ing. Jiri Sokol, js-delphi(zv)seznam(tec)cz, +420251431187
D6ProfSP2,WinNT
amatersky
programator

______________________________________________________________________
Reklama:
Mapy Prahy, Brna a Cech najdete na http://www.mapy(tec)cz

Jak prodat text do WebBrowser

[*] ing. Jan Fiala <jan.fiala(zv)iol(tec)cz> - 7.8.2002 15:16:56

7.8.2002 Ondrej Kelle:
>> A mohl bys uvest nejaky strucny priklad nebo postup, jak se na metodu
>> Write dostat ?

> procedure TForm1.FormCreate(Sender: TObject);
> begin
> WebBrowser1.Navigate('about:blank');
> end;

> procedure TForm1.Button1Click(Sender: TObject);
> var
> V: Variant;
> begin
> V := WebBrowser1.Document;
> V.write('<html><body>Hello, world!</body></html>');
> end;

Diky. To bylo to spravne nakopnuti.

--
Jan Fiala
mailto:jan.fiala(zv)iol(tec)cz

Freereport a cestina

[*] bures <bures(zv)ssakhk(tec)cz> - 7.8.2002 15:21:36

Ahoj lidi, mam malinkou prosbu, nema nekdo nahodou do cestiny prelozene
resorce k komponente freereport? (moc moc moc moc by mi to pomohlo) :)

Predem dekuji Vlada

spojeni pres proxy

[*] <ds.soft(zv)atlas(tec)cz> - 7.8.2002 15:38:48

Asi nejjednodussi moznost je nastavit proxy aby se sam pripojil kdyz je na nej pozadavek. Konkretni nastaveni zalezi co je tam za
proxy.
DS-SOFT David Sauer
----- P�vodn� zpr�va -----
Od: "Ladislav Fitz" <ladislav.fitz(zv)kodytek(tec)cz>
Komu: <delphi-l(zv)clexpert(tec)cz>
Odesl�no: 7. srpna 2002 9:59
P�edm�t: spojeni pres proxy


> dobry den
>
> pro pripojeni na internet pouzivam funkci InternetAutodial, ale narazil sem
> na potiz, pokud se pripojuji pres LAn nebo modem je vse OK, ale pres proxy
> server mi to nahlasi, ze je pripojen, ale proxy se ani nesnazi vytacet.
> nevite nekdo jak proxy server donutit aby se pripojil?
>
> predem diky
>
>

TMainMenu dynamicke vytvareni polozek

[*] Vlada Ponechal <vlada_ponechal(zv)post(tec)cz> - 7.8.2002 15:45:32

Zdar panove,

chci do sve aplikace udelat, aby si uzivatel byl schopen nadefinovat vlastni HotKeys. Zvolil jsem cestu definice pres TMainMenu. Moje predstava je: uzivatel si zvoli hotkey, co to ma udelat a po odeslani se vytvori v mainmenu nova polozka (visible := false). Ta pak bude reagovat na stlacene klavesnice.

Nemuzete mi nekdo poslat kratkou proceduru, jak to udelat programove. Nemam cas se s tim hrat/play.

Pripadne, neznate nekdo lepsi cestu jak udelat HotKeys?

Mam D6,

Vl.
----
EFEKTIVN� REKLAMA - DIRECT MAIL
vyu�ijte letn� slevy a oslovte sv� klienty, v�ce na http://reklama.volny(tec)cz

Komponenta GifImage podruhe

[*] Ing. Jiri SOKOL <JS-delphi(zv)seznam(tec)cz> - 07.8.2002 15:57:40

Tak prave jsem si znovu stahnul tu komponentu TGifImage, kterou mam i doma.
Cili jeji info:
nazev unity: gifimage.pas
autor: Anders Melander
verze: 2.2.5
stazena z www.Torry.net
nazev na torry.net: TGIFImage v.2.2

Je v ni spousta podmineho prekladu kodu - to by mohla byt cesta, proc jsou problemy.
Uz tady padly nazory na podm. preklad. Toto je v gifimage.pas :
// Delphi 1.x
{$IFDEF VER80}
'Error: TGIFImage does not support Delphi 1.x'
{$ENDIF}

// Delphi 2.x
{$IFDEF VER90}
{$DEFINE VER9x}
{$ENDIF}

// C++ Builder 1.x
{$IFDEF VER93}
// Good luck...
{$DEFINE VER9x}
{$ENDIF}

// Delphi 3.x
{$IFDEF VER100}
{$DEFINE VER10_PLUS}
{$DEFINE D3_BCB3}
{$ENDIF}

// C++ Builder 3.x
{$IFDEF VER110}
{$DEFINE VER10_PLUS}
{$DEFINE VER11_PLUS}
{$DEFINE D3_BCB3}
{$DEFINE BAD_STACK_ALIGNMENT}
{$ENDIF}

// Delphi 4.x
{$IFDEF VER120}
{$DEFINE VER10_PLUS}
{$DEFINE VER11_PLUS}
{$DEFINE VER12_PLUS}
{$DEFINE BAD_STACK_ALIGNMENT}
{$ENDIF}

// C++ Builder 4.x
{$IFDEF VER125}
{$DEFINE VER10_PLUS}
{$DEFINE VER11_PLUS}
{$DEFINE VER12_PLUS}
{$DEFINE VER125_PLUS}
{$DEFINE BAD_STACK_ALIGNMENT}
{$ENDIF}

// Delphi 5.x
{$IFDEF VER130}
{$DEFINE VER10_PLUS}
{$DEFINE VER11_PLUS}
{$DEFINE VER12_PLUS}
{$DEFINE VER125_PLUS}
{$DEFINE VER13_PLUS}
{$DEFINE BAD_STACK_ALIGNMENT}
{$ENDIF}

// Unknown compiler version - assume D4 compatible
{$IFNDEF VER9x}
{$IFNDEF VER10_PLUS}
{$DEFINE VER10_PLUS}
{$DEFINE VER11_PLUS}
{$DEFINE VER12_PLUS}
{$DEFINE BAD_STACK_ALIGNMENT}
{$ENDIF}
{$ENDIF}


Detekovat jestli bezi debug mod, nebo o kterou jde verzi to je mi jasne. Nerozumim vsak tomuto:
{$DEFINE VER10_PLUS} - co to znamena?

Jeste jednou podotykam, ze v D5 nejsou s touto komponentou zadne problemy, ale v D6 dochazi ke
spatnemu (chybovemu) zastavovani bezicich gifu, spatnemu uvolnovani pameti ... jak uz jsem tady
jednou psal, povedlo se mi v D6 gif zobrazit, program nepada, ale pokazde, kdyz zobrazim gif a pak
uz jej nepotrebuji, zustane v pameti az do doby, nez se aplikace zavre.


Ing. Jiri Sokol, js-delphi(zv)seznam(tec)cz, +420251431187
D6ProfSP2,WinNT
amatersky
programator

______________________________________________________________________
Reklama:
Seznam Prace - Hledate praci nebo menite zamestnani? http://prace.seznam(tec)cz

TMainMenu dynamicke vytvareni polozek

[*] Jaroslav Kuba <jarda(zv)tresoft(tec)cz> - 7.8.2002 16:30:30

Ahoj

Proc nepouzivas akce a SecondaryShortCuts, v D6 uz neni potreba mit vice
stejnych polozek v
menu kvuli zkratkam.

Delphi 6 Prof Win 2000 SP2

Jaroslav KUBA
jarda(zv)tresoft(tec)cz
ICQ 156901864

----- Original Message -----
From: "Vlada Ponechal" <vlada_ponechal(zv)post(tec)cz>
To: <delphi-l(zv)clexpert(tec)cz>
Sent: Wednesday, August 07, 2002 3:45 PM
Subject: TMainMenu dynamicke vytvareni polozek


> Zdar panove,
>
> chci do sve aplikace udelat, aby si uzivatel byl schopen nadefinovat
vlastni HotKeys. Zvolil jsem cestu definice pres TMainMenu. Moje predstava
je: uzivatel si zvoli hotkey, co to ma udelat a po odeslani se vytvori v
mainmenu nova polozka (visible := false). Ta pak bude reagovat na stlacene
klavesnice.
>
> Nemuzete mi nekdo poslat kratkou proceduru, jak to udelat programove.
Nemam cas se s tim hrat/play.
>
> Pripadne, neznate nekdo lepsi cestu jak udelat HotKeys?
>
> Mam D6,
>
> Vl.
> ----
> EFEKTIVN� REKLAMA - DIRECT MAIL
> vyu�ijte letn� slevy a oslovte sv� klienty, v�ce na
http://reklama.volny(tec)cz
>
>

TMainMenu dynamicke vytvareni polozek

[*] Ing. Jiri SOKOL <JS-delphi(zv)seznam(tec)cz> - 07.8.2002 17:06:39

Dne 7.�srpen�2002, <delphi-l(zv)clexpert(tec)cz> napsal:

> Zdar panove,
>
> chci do sve aplikace udelat, aby si uzivatel byl schopen nadefinovat vlastni HotKeys. Zvolil jsem cestu definice pres TMainMenu. Moje predstava je: uzivatel si zvoli hotkey, co to ma udelat a po odeslani se vytvori v mainmenu nova polozka (visible := false). Ta pak bude reagovat na stlacene klavesnice.
>
> Nemuzete mi nekdo poslat kratkou proceduru, jak to udelat programove. Nemam cas se s tim hrat/play.
>
> Pripadne, neznate nekdo lepsi cestu jak udelat HotKeys?
>
> Mam D6,
>
> Vl.

Ahoj,
pro pridavani polozek do Mainmenu za behu programu mrkni na:
http://www.zive(tec)cz/H/Developerdaily/Ar.asp?ARI=103890&CAI=2091
jinak na zive bezi serial o uzitecnych komponentach, mezi kteryma je i komponenta vytvarejici
HotKeys. Mrkni na:
U�ite�n� komponenty pro Delphi a C++ Builder, d�l 8.

Ahoj, Jirka

Ing. Jiri Sokol, js-delphi(zv)seznam(tec)cz, +420251431187
D6ProfSP2,WinNT
amatersky
programator

______________________________________________________________________
Reklama:
Nejenom anglicko-cesky slovnik: http://slovnik.seznam(tec)cz

MS SQL 2000 SELECT

[*] Slavomir Cekel <cekel(zv)noves.sk> - 7.8.2002 17:38:26

Zdravim ...

ako vytvorit SELECT ??? opisem co chcem:

mam tabulku poloziek ... nie su ocislovane ... ale pri selecte chcem,
aby mi k danym polozkam nejake tie cisla dalo .... moze byt zaradom od
jednicky ... ako to dosiahnut ?

Slavo

Delphi 7 Announced

[*] Erik Salaj <winsoft(zv)stonline.sk> - 7.8.2002 17:59:55

> Nie je dost dobre mozne porovnavat Visual C# .Net Standard a Delphi
> professional,
> MS nema v ponuke Visual C# .Net Professional len cele Visual Studio
.Net
> Professional,
> V Visual C# Standard chyba Crystal Report.

ano, Crystal Report v Visual C# Standard nie je. Ale toho, co tam
je, je tolko, ze smelo mozemo porovnavat aj s Delphi Enterprise.

Visual C# Standard nie je v ziadnom pripade prakticky nepouzitelny
program ako je to v pripade Delphi Personal kde chybaju databazy,
nechodia niektore IDE funkcie, chybaju komponenty atd..
V C# Standard chyba zopar wizardov, nechodia Visual Database
Tools (t.j. tabulky treba vytvarat pomocou skriptov), spolupracuje
to iba s MSDE (na SQL server sa nekonektne), tusim tam
nie je remote debugging (ktory som aj tak nikdy nepotreboval).
Vsetko su to z mojho pohladu nepodstatne obmedzenia.
Vysledne programy mozes samozrejme distribuovat, v IDE
je priamo zaintegrovana velmi kvalitna podpora (neporovantelna
s IS Expressom) pre vytvaranie instalaciek niekolkych typov,
i pre web.

Samotne IDE je plne funkcne, bez obmedzeni sa da vsetko
editovat, prekladat a ladit az na uroven strojoveho kodu
(kto neveri, ze program bezi v .NET ako nativny x86 kod,
sa moze o tom lahko presvedcit :-) ). Samotne IDE sa mi
zda byt lepsie prepracovane ako v Delphi, napr. sikovne
su zasuvacie listy a cele je to velmi kompaktne na rozdiel
od Delphi, kde vzdy hladam formulare po celej obrazovke.
Tiez sa mi paci, ze tam nie su ziadne DFM subory, ale designer
priamo modifikuje zdrojovy kod, pricom casti zdrojoveho
kodu je mozne sikovne schovat (napr. casti generovane
designerom alebo tela metod, ci deklaracie tried - zostanu
viditelne len hlavicky).

Zdarma sa da este k tomu stiahnut z internetu Visual J#
- Java od MS, zaintegruje sa to priamo do C# IDE
ako dalsi jazyk. Dalej sa daju stiahnut komponenty
(od MS) pre priamy pristup na ODBC a Oracle
databazy (standardne je k dispozicii priamy pristup
na MS SQL a OLE DB).

Inak Visual C#.Net Stadnard su 4 CD-cka, na jednom
su Windows service packy, ADO a .NET redist.
Na zvysnych 3 je IDE, .NET SDK, MSDE a MSDN
(a v tom MSDN je aj kompletna dokumentacia
Windows API - uz koli tomu sa to oplati pre Delphi
programatora). K tomu je balik 5 plagatov (obojstranne
potlacenych) s .NET komponentami (na jednom su
aj ATL, OLEDB a MFC triedy) a katalog
third-party komponentov. Dalej je tam este jeden
200 stranovy tlaceny manual, presnejsie je to vyber
zopar kapitol s asi 5 roznych publikacii tykajucich
sa C# (teda vlastne taka reklama na tie knihy). Zaplatil
som za to 4979,- Sk vcitane DPH a postovneho.

Erik

Nemohu pridat index do tabulky.

[*] Petr Pa��enko <PetrPas(zv)volny(tec)cz> - 7.8.2002 19:59:24

Zdravim,
nemohu pridat druhotny index do tabulky. Pouzivam postup:

Table1.Close;
Table1.Exclusive:=true;
Table1.Addindex('JMENO','DATUM',[]);
Table1.Open;

Pouzivam Paradox 7, BDE a D6. Kdyby mi nekdo mohl poradit, moc mi to pomuze.

S Pozdravem Petr Pascenko.

Nemohu pridat index do tabulky.

[*] Petr Brant <brant(zv)dcomm(tec)cz> - 7.8.2002 20:10:59

Ahoj, posilam kus kodu, ktery mi funguje (D5, W98, BDE 5.11):

StickTab:= TTable.Create(nil);
StickTab.DatabaseName:= ExtractFilePath(Application.ExeName);
StickTab.TableName:= CStickName;
StickTab.Exclusive:= true;
if OpenTable(ErrMsgNoMsg, StickTab) = mrOK then ---> tohle si prepis jako
potrebujes
begin
writeln(CStickName + '...opened');
write('Adding index...');
try
StickTab.AddIndex('IdxMsgPieceText',
'MsgPieceText',[ixCaseInsensitive]);
writeln('succeeded');
except
on E: Exception do
begin
Err:= E.Message;
writeln('failed (' + Err + ')');
end;
end;
end else writeln('Table ' + CStickName + ' could not be opened.');
StickTab.Free;

RNDr. Petr Brant [brant(zv)dcomm(tec)cz]
http://web.redbox(tec)cz/petr.brant
ICQ #68652380

D&COMM s.r.o.
Korunova�n� 6
170 00 Praha 7


> Subject: Nemohu pridat index do tabulky.
>
> nemohu pridat druhotny index do tabulky. Pouzivam postup:
>
> Table1.Close;
> Table1.Exclusive:=true;
> Table1.Addindex('JMENO','DATUM',[]);
> Table1.Open;
>
> Pouzivam Paradox 7, BDE a D6. Kdyby mi nekdo mohl poradit, moc mi to
pomuze.
>
> S Pozdravem Petr Pascenko.

array of record ako file

[*] Bohus Belej <leveller(zv)szm(tec)com> - 7.8.2002 20:19:21

Zdravim.

Som viacmenej zaciatocnik tak mi skuste poradit.Robim aplikaciu ktora
bude monitorovat niekolko sto analogovych kanalov v jednom zariadeni.
Kazdy kanal bude mat niekolko nastaveni a pod. Akym sposobom tieto
informacie zapisat na disk? Zatial to mam v array of record,ale ten
neviem dostat na disk ako file.Pre zapisanie do registrov je to asi
prilis vela dat,a ini subor sa mi tiez nezda.Teda,nedalo by sa to moje
array of records zapisat ako binarny subor na disk? Pripadne,ake su
pouzivane sposoby zapisu velkeho poctu roznych preferencies na disk?

Diky



--
Best regards,
Bohus mailto:leveller(zv)szm.com

Komponenta GifImage podruhe

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 7.8.2002 20:37:13

From: "Ing. Jiri SOKOL" <JS-delphi(zv)seznam(tec)cz>
> Neslo by to bez yahoo ??? Prosiiim, nejsem schopen se tam zaregistrovat.
> Nevim proc, ale na kazdy navrh LogName to hlasi, ze uz existuje - a to jsem
> zkousel brutalni kombinace, ktere by snad nikoho nenapadly.

Co treba GUID (Ctrl+Shift+G v Delphi editoru) ?

Petr Vones

dxStyly u klasickejch komponent

[*] Jan Linhart <delphi(zv)mis-net(tec)cz> - 7.8.2002 20:51:18

Ahoj,

prosim Vas.... Existuje osoba pouzivajici styly u komponent od DevExpress a
to hlavni - jestli si to nekdo dodelaval k vlastnim komponentam a to
technologii DevExpress, aby fungovaly StyleControllery.

Me se to zda dost divoky a nevim, jestli do toho jit nebo to nejak osidit,
ale sidil bych nerad...

predem diky moc

.........Honza, D3

proc nekresli DrawEdge ?

[*] Jan Linhart <delphi(zv)mis-net(tec)cz> - 7.8.2002 21:03:21

Ahoj,

potreboval bych udelat (nebo i zrusit) odlisnej ramecek kolem TEdit.
Rikam si, ze pres API je to nejrychlejsi a vzhledem k existenci zminene
funkce jsem se zarekl, ze to proste pujde...
Takze to samozrejme nejde a proto prosim o pomoc, jelikoz uz absolutne
netusim, co je spatne.

Od nasledujiciho kodu bych ocekaval, ze se bude ramecek kreslit sedou barvou
(clBtnFace), ale ne, on se kresli cerne. Funkce DrawEdge pro jistotu neudela
vubec nic.

Predem diky za "osviceni" :-)

...........Honza, D3


unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;

type
TMy = class(TEdit)//TWinControl)
private
procedure WMNCPaint(var Message: TWMNCPaint); message WM_NCPAINT;
end;

TForm1 = class(TForm)
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
My : TMy;
end;

var
Form1: TForm1;

implementation

{$R *.DFM}

procedure TMy.WMNCPaint(var Message: TWMNCPaint);
var
DC: HDC;
R : TRect;
h : Integer;
c : TColor;
begin
DC := GetWindowDC(Handle);
if DC <> 0 then try
h := CreateSolidBrush(clBtnFace); // pro� nekresl� �ed�, ale �ern�?
SelectObject(DC, h);
SetRect(r, 0, 0, Width, Height);
FillRect(DC, r, h);
Deleteobject(h);

if not DrawEdge(DC, R, BDR_SUNKENOUTER, BF_Flat or BF_ADJUST) // pro�
nekresl�?
then ShowMessage('Chyba, nenakresleno') else ShowMessage('OK');
finally
ReleaseDC(Handle, DC);
end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
My := TMy.Create(self);
My.Parent := Self;
end;

end.

vymaz a posun hodnot v dynamickem poli

[*] Zdenek Stepanek <zstepanek(zv)atlas(tec)cz> - 7.8.2002 21:10:34

Zdravim

Mam dve dynamicke pole (String a TIPAddr (=record of byte)). Potrebuji z
techto poli vymazat zname hodnoty a zbyle posunout o jednu pozici blize k
nule. Vim, jak to udelat pomoci for..do, ale nemate nekdo lepsi napad?

Diky
Zdenek

vymaz a posun hodnot v dynamickem poli

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 7.8.2002 21:20:58

From: "Zdenek Stepanek" <zstepanek(zv)atlas(tec)cz>
> Mam dve dynamicke pole (String a TIPAddr (=record of byte)). Potrebuji z
> techto poli vymazat zname hodnoty a zbyle posunout o jednu pozici blize k
> nule. Vim, jak to udelat pomoci for..do, ale nemate nekdo lepsi napad?

Napsat to jako objekt ulozeny v seznamu (TObjectList).

Petr Vones

OT Re: Komponenta GifImage podruhe

[*] Martin Schayna <mschayna(zv)aktis(tec)cz> - 7.8.2002 21:49:15

----- Original Message -----
From: "Petr Vones" <pvones(zv)mbox.vol(tec)cz>
> From: "Ing. Jiri SOKOL" <JS-delphi(zv)seznam(tec)cz>
> > Neslo by to bez yahoo ??? Prosiiim, nejsem schopen se tam zaregistrovat.
> > Nevim proc, ale na kazdy navrh LogName to hlasi, ze uz existuje - a to jsem
> > zkousel brutalni kombinace, ktere by snad nikoho nenapadly.
>
> Co treba GUID (Ctrl+Shift+G v Delphi editoru) ?

<G>

To je fakt, ja jsem se na yahoogroups taky prihlasil az na 4ty pokus, vsechna
rozumna jmena uz nekdo ma <g>, zkus neco jako "jmeno12241" to se snad
s nikym nepotkas.

Zdravi {8C6F0169-D92F-43C8-AA7D-E0BFB62DA8E9}

OT Re: Komponenta GifImage podruhe

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 7.8.2002 21:59:10

From: "Martin Schayna" <mschayna(zv)aktis(tec)cz>
> To je fakt, ja jsem se na yahoogroups taky prihlasil az na 4ty pokus,
> vsechna rozumna jmena uz nekdo ma <g>, zkus neco jako "jmeno12241" to se

To chce vice fantazie. Navic kde je psano, ze ta jmena musi byt rozumna ;-)
GUID je opravdu az ten krajni pripad <g>

Petr Vones

array of record ako file

[*] Lauko Stefan <laukosw(zv)naex.sk> - 7.8.2002 22:49:14


----- Original Message -----
From: "Bohus Belej" August 07, 2002 8:19 PM
> Zdravim.
>
> Som viacmenej zaciatocnik tak mi skuste poradit.Robim aplikaciu ktora
> bude monitorovat niekolko sto analogovych kanalov v jednom zariadeni.
> Kazdy kanal bude mat niekolko nastaveni a pod. Akym sposobom tieto
> informacie zapisat na disk? Zatial to mam v array of record,ale ten
> neviem dostat na disk ako file.Pre zapisanie do registrov je to asi
> prilis vela dat,a ini subor sa mi tiez nezda.Teda,nedalo by sa to moje
> array of records zapisat ako binarny subor na disk? Pripadne,ake su
> pouzivane sposoby zapisu velkeho poctu roznych preferencies na disk?

Ahoj,
na zapis cohokolvek na disk je najvyhodnejsie pouzit Stream - TFileStream.

type
TRec = Packed record
A,B,C:Integer;
S:String[30];
end;

TArr = array of Trec;

procedure TForm1.Button1Click(Sender: TObject);{zapis}
var
Zoznam:TArr;
St:TFileStream;
n:Integer;
begin
SetLength(Zoznam, 3);
Zoznam[0].A:=100;
Zoznam[0].S:='Ahoj';
Zoznam[1].A:=101;
Zoznam[2].A:=700;

St:=TFileStream.Create('C:\test.dat',fmCreate);
for n:= low(Zoznam) to High(Zoznam) do
St.Write(Zoznam[n],SizeOf(Zoznam[n]));
St.Free;
end;

procedure TForm1.Button2Click(Sender: TObject);{nacitanie}
var
Zoznam:TArr;
St:TFileStream;
n:Integer;
begin
St:=TFileStream.Create('C:\test.dat',fmShareDenyNone);
SetLength(Zoznam,St.Size div SizeOf(TRec));
for n:= low(Zoznam) to High(Zoznam) do
St.Read(Zoznam[n],SizeOf(Zoznam[n]));
St.Free;
end;

Lauko.



MS SQL 2000 SELECT

[*] Ing. Pavel �ilinec����)b���zf���3 - 8.8.2002 06:17:05

Muzes pouzit fci identity(Pocatek, Krok), ale ta vyzaduje, aby byl
select vytvaren s klauzuli 'into'
select ID = identity(1, 1), * into #pom from tabulka
select * from #pom
Jeste se tu psalo pouziti lokalni promenne, ktera se postupne nacita
declare (zv)ID int
set (zv)ID = 1
select ID = (zv)ID, *, (zv)ID = (zv)ID + 1 from tabulka

--------
ing. Pavel Zilinec
MailTo:zilinec(zv)email(tec)cz

Prog-Soft s.r.o. Plzen
Informacni system pro vyrobce
a distributory napoju

SC> Zdravim ...

SC> ako vytvorit SELECT ??? opisem co chcem:

SC> mam tabulku poloziek ... nie su ocislovane ... ale pri selecte chcem,
SC> aby mi k danym polozkam nejake tie cisla dalo .... moze byt zaradom od
SC> jednicky ... ako to dosiahnut ?

SC> Slavo

ako urobit formular so sumami

[*] mato <mato.tino(zv)inmail.sk> - 8.8.2002 08:00:18

zdravim,

D5
mam databazu mdb a komponenty DAO. Mam tabulku :

mesiac, meno, zakazka, hodiny
1 ZAJ 1/2002 2
1 ZAJ 1/2002 1
2 ZAJ 1/2002 3
1 JUR 1/2002 4

a chcel by som z toho dostat formular zo sumami za za mesiac a meno, napr.

zak.1/2002
meno, mesiac, hod
ZAJ 1 3
ZAJ 2 3
spolu 5
JUR 1 4
spolu 4

dufam ze je to rozumitelne. Neviem ako by som urobil nejaky dotaz alebo co.

Komponenta GifImage podruhe

[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 8.8.2002 08:03:11

> Detekovat jestli bezi debug mod, nebo o kterou jde verzi to je mi
> jasne. Nerozumim vsak tomuto: {$DEFINE VER10_PLUS} - co to znamena?

Nejaka vlastni promenna. VER100 by melo tusim rikat, ze verze ObjectPascalu je
10.0 a to odpovida D3. Kdyz se detekuje D4 (VER120), definuje autor i
VER10_PLUS, a v programu mu to pak da informaci o tom, ze jde o D3 nebo vyssi.> Jeste jednou podotykam, ze v D5 nejsou s touto komponentou zadne
> problemy, ale v D6 dochazi ke spatnemu (chybovemu) zastavovani
> bezicich gifu, spatnemu uvolnovani pameti ... jak uz jsem tady jednou
> psal, povedlo se mi v D6 gif zobrazit, program nepada, ale pokazde,
> kdyz zobrazim gif a pak uz jej nepotrebuji, zustane v pameti az do
> doby, nez se aplikace zavre.

Pokud jsem to v te rychlosti dobre pochopil, tak pokud se nepodari detekovat verzi
Delphi, coz se v pripade D6 a daneho zdrojaku nepodari, chova se to jako v D4. A v
D4 muze byt neco jinak nez v D6. Neboli bud je potreba ty zdroje prolezt a upravit
pro D6, nebo pockat, az to udela autor, pokud to vubec nekdy udela.

David Lebeda

ako urobit formular so sumami

[*] Ing. Pavel �ilinec����)b���zf���3 - 8.8.2002 08:11:06

select Zakazka, Meno, Mesiac, Hod = sum(Hodiny)
from Tabulka
group by Zakazka, Meno, Mesiac
order by Zakazka, Meno, Mesiac

Potom v Delphi si na formulari udelas dve grupy:
1. podle Zakazka a v hlavicce bude mit zakazku a v paticce sum(Hod)
2. podle Meno a hlavicka muze zustat pradna a v paticce sum(Hod)
V detailu si uz das Meno, Mesiac, Hod

--------
ing. Pavel Zilinec
MailTo:zilinec(zv)email(tec)cz

Prog-Soft s.r.o. Plzen
Informacni system pro vyrobce
a distributory napoju

m> zdravim,

m> D5
m> mam databazu mdb a komponenty DAO. Mam tabulku :
m> mesiac, meno, zakazka, hodiny
m> 1 ZAJ 1/2002 2
m> 1 ZAJ 1/2002 1
m> 2 ZAJ 1/2002 3
m> 1 JUR 1/2002 4

m> a chcel by som z toho dostat formular zo sumami za za mesiac a meno, napr.

m> zak.1/2002
m> meno, mesiac, hod
m> ZAJ 1 3
m> ZAJ 2 3
m> spolu 5
m> JUR 1 4
m> spolu 4

proc nekresli DrawEdge ?

[*] Ladislav Fitz <ladislav.fitz(zv)kodytek(tec)cz> - 8.8.2002 08:28:21

> h := CreateSolidBrush(clBtnFace); // pro� nekresl� �ed�, ale �ern�?


misto toho skus

h := CreateSolidBrush(ColorToRGB(clBtnFace));

melo by to pomoct

Delphi 7 Announced

[*] Petr <DelphiForum(zv)seznam(tec)cz> - 8.8.2002 08:29:40

Pred chvili mi poslal kamarad z AU cenik a Delphi 7 Pro (upgrade z
predchozich verzi Delphi) je v akci za AU$598,-

Petr Jurik, Spravce site, programator
COMET System s.r.o.
1.Maje 1220
756 61 Roznov pod Radhostem
tel. 0651/653990
fax. 0651/653993
http://www.cometsystem(tec)cz

ICQ# : 119119215

> Nie je dost dobre mozne porovnavat Visual C# .Net Standard a Delphi
> professional,
> MS nema v ponuke Visual C# .Net Professional len cele Visual Studio
.Net
> Professional,
> V Visual C# Standard chyba Crystal Report.
>
> http://msdn.microsoft.com/vcsharp/howtobuy/choosing.asp
>
> Peter

vymaz a posun hodnot v dynamickem poli

[*] Ing. Jiri SOKOL <JS-delphi(zv)seznam(tec)cz> - 08.8.2002 09:20:52

Dne 7.�srpen�2002, <delphi-l(zv)clexpert(tec)cz> napsal:

> Zdravim
>
> Mam dve dynamicke pole (String a TIPAddr (=record of byte)). Potrebuji z
> techto poli vymazat zname hodnoty a zbyle posunout o jednu pozici blize k
> nule. Vim, jak to udelat pomoci for..do, ale nemate nekdo lepsi napad?
>
> Diky
> Zdenek

Ja pouzivam jako seznam ukazatelu promennou tridy TList. Ta to udela vse za Tebe. Umi i seradit
prvky.
Pouzivas jen Insert, Add, Delete, Sort atd. je to pohodlnejsi - zkus to! :)
Ahoj Jirka

Ing. Jiri Sokol, js-delphi(zv)seznam(tec)cz, +420251431187
D6ProfSP2,WinNT
amatersky
programator

______________________________________________________________________
Reklama:
Poctenicko pro kazdy den: http://www.novinky(tec)cz

OT Re: Komponenta GifImage podruhe

[*] Ing. Jiri SOKOL <JS-delphi(zv)seznam(tec)cz> - 08.8.2002 09:25:17

Dne 7.�srpen�2002, <delphi-l(zv)clexpert(tec)cz> napsal:

> ----- Original Message -----
> From: "Petr Vones" <pvones(zv)mbox.vol(tec)cz>
> > From: "Ing. Jiri SOKOL" <JS-delphi(zv)seznam(tec)cz>
> > > Neslo by to bez yahoo ??? Prosiiim, nejsem schopen se tam zaregistrovat.
> > > Nevim proc, ale na kazdy navrh LogName to hlasi, ze uz existuje - a to jsem
> > > zkousel brutalni kombinace, ktere by snad nikoho nenapadly.
> >
> > Co treba GUID (Ctrl+Shift+G v Delphi editoru) ?
>
> <G>
>
> To je fakt, ja jsem se na yahoogroups taky prihlasil az na 4ty pokus, vsechna
> rozumna jmena uz nekdo ma <g>, zkus neco jako "jmeno12241" to se snad
> s nikym nepotkas.
>
> Zdravi {8C6F0169-D92F-43C8-AA7D-E0BFB62DA8E9}
>

Myslite si, ze se uz nekdo jmenuje treba takto?

123987timecekcerveny8756423

No yahoo mi rika, ze jo. Tomu proste neverim!!!! Podobnych brutalit jsem zkousel uz desitky. Jsem v
praci a Delphi tady nemam, takze GUID nevyzkousim, ale jsem si jisty na 99%, ze to dopadne stejne.
Ach jo, vyzne by to neslo bez yahoo!??? :-/

Ing. Jiri Sokol, js-delphi(zv)seznam(tec)cz, +420251431187
D6ProfSP2,WinNT
amatersky
programator

______________________________________________________________________
Reklama:
Seznam Prace - Hledate praci nebo menite zamestnani? http://prace.seznam(tec)cz

Delphi 7 Announced

[*] Slavek Rydval <rk(zv)atrey.karlin.mff.cuni(tec)cz> - 8.8.2002 09:33:36

Ahoj,

to je fajn, ale cesky borland te bude povazovat za pirata (viz
nekolikrat vedena diskuze v archivu, netreba znovu otevirat).

Slavek

On 8 Aug 2002 at 8:29, Petr wrote:

> Pred chvili mi poslal kamarad z AU cenik a Delphi 7 Pro (upgrade z
> predchozich verzi Delphi) je v akci za AU$598,-
> Petr Jurik, Spravce site, programator
--------------------------------------------------------
http://atrey.karlin.mff.cuni(tec)cz/~rk
--------------------------------------------------------
Udelejte to blbuvzdorne a zitra nekdo vymysli jeste vetsiho blba.

Delphi 7 Announced

[*] Matavovsky Peter <matavovsky(zv)vse.sk> - 8.8.2002 09:37:55

pre oboznamenie s .Net staci stiahnut 'Microsoft .NET Framework Software
Development Kit' z

http://msdn.microsoft.com/downloads/default.asp?url=/downloads/sample.asp?ur
l=/msdn-files/027/000/976/msdncompositedoc.xml&frame=true (131 Mb)
potom staci obycajny Notepad na pripravu testovacich programov,
je to divne ale funguje to fantasticky (aj konekt na MS SQL...)

Peter

>Pred chvili mi poslal kamarad z AU cenik a Delphi 7 Pro (upgrade z
>predchozich verzi Delphi) je v akci za AU$598,-

> Nie je dost dobre mozne porovnavat Visual C# .Net Standard a Delphi
> professional,
> MS nema v ponuke Visual C# .Net Professional len cele Visual Studio
.Net
> Professional,
> V Visual C# Standard chyba Crystal Report.

(Ne)vsemocna konstrukce try...except

[*] Pawell None <pawell.none(zv)atlas(tec)cz> - 8.8.2002 10:43:28

Zdravim a prosim o radu.
Udelal jsem konstrukci try...except se zasadni chybou:

procedure TForm1.proc2;
var
List: TStringList;
begin
try
List := TStringList.Create;
with List do
try
Proc3;
finally
Free;
end;

List.Add('a'); // <------------------
except
proc4;
end;
end;

Ocekaval jsem, ze aplikace diky teto konstrukci bude schopna chybu zpracovat
a pokracovat dale bez problemu. To take na prvnich nekolik prubehu projde,
ale necham-li to udelat nekolikrat za ssebou, aplikace vzdy spadne.

Vite nekdo, proc to konstrukce nezpracuje a co by se s tim dalo delat?
Konstrukce try...except neni tak vsemocna, jak jsem predpokladal?

diky
Pavel Blahovec

OT: Programator v Delphi se znalosti MySQL

[*] Pawell None <pawell.none(zv)atlas(tec)cz> - 8.8.2002 10:45:04

Ahoj,
hledam programatora v Delphi se znalosti MySQL pro implementaci zakaznickych uprav do mensiho databazoveho systemu.
Jedna se o praci na cca 1 - 2 tydny, k dispozici jsou dve oddelene zadani. Cena na zaklade dohody.
Vyhodou je zivnostensky list a bydliste praha. Dalsi podrobnosti na vyzadani.

Pavel Blahovec
http://www.geocities.com/nilsoftware

ako urobit formular so sumami

[*] mato <mato.tino(zv)inmail.sk> - 8.8.2002 10:55:37

prepacte, tie grupy, to su ake komponenty.

----- Original Message -----
From: "Ing. Pavel �ilinec" <zilinec(zv)email(tec)cz>
To: "mato" <delphi-l(zv)clexpert(tec)cz>
Sent: Thursday, August 08, 2002 8:11 AM
Subject: Re: ako urobit formular so sumami


> select Zakazka, Meno, Mesiac, Hod = sum(Hodiny)
> from Tabulka
> group by Zakazka, Meno, Mesiac
> order by Zakazka, Meno, Mesiac
>
> Potom v Delphi si na formulari udelas dve grupy:
> 1. podle Zakazka a v hlavicce bude mit zakazku a v paticce sum(Hod)
> 2. podle Meno a hlavicka muze zustat pradna a v paticce sum(Hod)
> V detailu si uz das Meno, Mesiac, Hod
>
> --------
> ing. Pavel Zilinec
> MailTo:zilinec(zv)email(tec)cz
>
> Prog-Soft s.r.o. Plzen
> Informacni system pro vyrobce
> a distributory napoju
>
> m> zdravim,
>
> m> D5
> m> mam databazu mdb a komponenty DAO. Mam tabulku :
> m> mesiac, meno, zakazka, hodiny
> m> 1 ZAJ 1/2002 2
> m> 1 ZAJ 1/2002 1
> m> 2 ZAJ 1/2002 3
> m> 1 JUR 1/2002 4
>
> m> a chcel by som z toho dostat formular zo sumami za za mesiac a meno,
napr.
>
> m> zak.1/2002
> m> meno, mesiac, hod
> m> ZAJ 1 3
> m> ZAJ 2 3
> m> spolu 5
> m> JUR 1 4
> m> spolu 4
>
>
>

Delphi 7 Announced

[*] Petr <DelphiForum(zv)seznam(tec)cz> - 8.8.2002 11:22:01

No ... uprimne mam Cesky Borland nekde ... kdyz bude mit namitky, tak
jednoduse prokazu, ze jsem to koupil ... a kde jsem to koupil mu muze byt
ukradene .... je to platna licence ? Je ! Je to nelegalni kopie ? NE ! Konec
debaty !

Petr
ICQ# : 119119215

> Ahoj,
>
> to je fajn, ale cesky borland te bude povazovat za pirata (viz
> nekolikrat vedena diskuze v archivu, netreba znovu otevirat).
>
> Slavek

ako urobit formular so sumami

[*] Ing. Pavel �ilinec����)b���zf���3 - 8.8.2002 11:22:29

Predpokladam, ze formularem myslime oba report/sestavy, napr. QReport.
Pak na zalozce QReport je QRGroup a pak pro hlavicku/paticku grupy je
QRBand(tam se jen urci BandType a navaze se grupa).
Pokud mate na mysli zobrazeni danych udaju na formulari (TForm), tak
to uz zalezi na Tobe, jak si dana data zobrazis (napr. TreeView, ...)
- tam si ale musis dane mezisoucty dopocitavat sam nebo si je nejak
vytahnout v tom selectu.

--------
ing. Pavel Zilinec
MailTo:zilinec(zv)email(tec)cz

Prog-Soft s.r.o. Plzen
Informacni system pro vyrobce
a distributory napoju

m> prepacte, tie grupy, to su ake komponenty.

AN: Aktualizace komponent

[*] Bene� Jaroslav <JBenes(zv)cpoj(tec)cz> - 8.8.2002 11:54:03

Ahoj
dovolim si annoncovat moje stranky s komponenty na http://www.micrel(tec)cz/delphi kde jsou nove komponenty a aktualizace puvodnich.
Diky za precteni
Jaro B.

(Ne)vsemocna konstrukce try...except

[*] MarekFi <MarekFi(zv)centrum(tec)cz> - 08.8.2002 11:56:46

Ahoj!

Pawell None wrote:

> Zdravim a prosim o radu.
> Udelal jsem konstrukci try...except se zasadni chybou:
>
> procedure TForm1.proc2;
> var
> List: TStringList;
> begin
> try
> List := TStringList.Create;
> with List do
> try
> Proc3;
> finally
> Free;

tedy LIST uvolnis z pameti

>
> end;
>
> List.Add('a'); // <------------------

a tady s nim chces pracovat?????

>
> except
> proc4;
>

> end;
> end;
>
> Ocekaval jsem, ze aplikace diky teto konstrukci bude schopna chybu zpracovat
> a pokracovat dale bez problemu. To take na prvnich nekolik prubehu projde,
> ale necham-li to udelat nekolikrat za ssebou, aplikace vzdy spadne.
>
> Vite nekdo, proc to konstrukce nezpracuje a co by se s tim dalo delat?
> Konstrukce try...except neni tak vsemocna, jak jsem predpokladal?
>
> diky
> Pavel Blahovec

Marek Fiala

NestedDataset u ClientDataSetu

[*] Michal Sefcik <sefcik(zv)benefitcz(tec)cz> - 8.8.2002 12:14:53

Preji hezky den.

Pro master-detailing dvou ClientDataSetu pouzivam
nested datasetu. Neni problem. Az do momentu,
kdy bych potreboval jednotlive fieldy Detailu editovat
spolu s fieldy Masteru v DB-aware komponentach
na DBControlGridu. To se mi zatim nepodarilo
zadnym zpusobem obejit.

Muzete mne nekdo nasmerovat?

Dekuji predem.
************************************************************
Ing.Mgr. Michal Sefcik
Benefit CZ, s.r.o.
Hrub�ho 11, 612 00 Brno
tel: +420 5 41219098, 9
fax: +420 5 41215886
http: www.benefitcz(tec)cz
************************************************************

Re[2]: (Ne)vsemocna konstrukce try...except

[*] Ing. Pavel �ilinec����)b���zf���3 - 8.8.2002 12:28:04

V uvodu bylo, ze si tu chybu schvalne nasimuloval - a zajimalo ho,
proc pri chybe v sekci try po nekolika pruchodech aplikace spadla.
Ja sice problem chapu, ale zase na to neumim odpovedet :)

--------
ing. Pavel Zilinec
MailTo:zilinec(zv)email(tec)cz

Prog-Soft s.r.o. Plzen
Informacni system pro vyrobce
a distributory napoju

M> tedy LIST uvolnis z pameti
M> a tady s nim chces pracovat?????

M> Marek Fiala

(Ne)vsemocna konstrukce try...except

[*] Petr Vones <pvones(zv)mbox.vol(tec)cz> - 8.8.2002 13:13:13

From: "Mirek Drej�ek" <drejcek(zv)schkocr(tec)cz>
> Fungovalo to skvele. Dokud jsem program nespustil na PC s procesorem AMD.
> Tam to zacalo padat, jako bych tam nic nemel. Takze opravdu neni tak
> vsemocna.

Co je to presne 'padat' ? Nebyla to nahodou BSOD na Windows 98 na pocitaci s
rychlym procesorem (je uplne jedno jestli Intel, AMD nebo treba Tesla :-) pri
operaci deleni nulou ? To je totiz chyba v danem systemu/driverech a ne v
kompilatoru ci procesoru. Pred casem se to tu probiralo.

Petr Vones

None

[*] kkonf <kkonf(zv)email(tec)cz> - 08.8.2002 13:13:13


>Ach jo, vyzne by to neslo bez yahoo!??? :-/

Zkus: http://www.volny(tec)cz/runat/download/delphi/gifimage.zip
ale nevim verzi.

kchodl

Delphi 7 Announced

[*] kkonf <kkonf(zv)email(tec)cz> - 08.8.2002 13:19:46


>Oproti tomu Borland se napr. za cenu Delphi 6 Enterprise stydi a na
>webu ji neuvadi (clovek si k nim musi zavolat). Navic ceny Delphi 6

jen pro informaci: cena byla pocatkem 07/2002 cca 120.000,-


>Cesky Borland bude prodavat za cca 40 000 Kc (muj odhad).

Cena D7 Prof. k 8.8.2002 (potvrzeno telefonicky): 29.000,-


kchodl

(Ne)vsemocna konstrukce try...except

[*] Zbysek Hlinka <hlinka(zv)hlinka(tec)cz> - 8.8.2002 13:23:43

On 8 Aug 2002 at 11:56, MarekFi wrote:

> > Udelal jsem konstrukci try...except se zasadni chybou:
> >
> > procedure TForm1.proc2;
> > var
> > List: TStringList;
> > begin
> > try
> > List := TStringList.Create;
> > with List do
> > try
> > Proc3;
> > finally
> > Free;
>
> tedy LIST uvolnis z pameti
>
> > end;
> >
> > List.Add('a'); // <------------------
>
> a tady s nim chces pracovat?????

Vsak o to jde, proc to neustoji except?

> > except
> > proc4;
> > end;
> > end;

S pozdravem

Zbysek Hlinka


(Ne)vsemocna konstrukce try...except

[*] Skopalik Slavomir <skopalik(zv)hlubocky.del(tec)cz> - 8.8.2002 13:25:50

Acces Violation je velmi osidna chyba, pokud se trefis do mista, ktere mas alokovano jinym objektem,
dojde k poskezeni dat tohoto objektu.
Acces Violation se NIKDY nepokousej resit try except. VZDY je nutno odstranit pricinu.

Slavek


> procedure TForm1.proc2;
> var
> List: TStringList;
> begin
> try
> List := TStringList.Create;
> with List do
> try
> Proc3;
> finally
> Free;
> end;
>
> List.Add('a'); // <------------------
> except
> proc4;
> end;
> end;
>
> Ocekaval jsem, ze aplikace diky teto konstrukci bude schopna chybu zpracovat
> a pokracovat dale bez problemu. To take na prvnich nekolik prubehu projde,
> ale necham-li to udelat nekolikrat za ssebou, aplikace vzdy spadne.
>

NestedDataset u ClientDataSetu

[*] CIS <cis(zv)atlas(tec)cz> - 8.8.2002 13:27:52

HI,
delam to tak, ze si detaily primojim pres tdataSource a je to
ales
----- Original Message -----
From: "Michal Sefcik" <sefcik(zv)benefitcz(tec)cz>
To: "Delphi konference" <delphi-l(zv)clexpert(tec)cz>
Sent: Thursday, August 08, 2002 12:14 PM
Subject: NestedDataset u ClientDataSetu


> Preji hezky den.
>
> Pro master-detailing dvou ClientDataSetu pouzivam
> nested datasetu. Neni problem. Az do momentu,
> kdy bych potreboval jednotlive fieldy Detailu editovat
> spolu s fieldy Masteru v DB-aware komponentach
> na DBControlGridu. To se mi zatim nepodarilo
> zadnym zpusobem obejit.

IB + zapis MD pres procedury

[*] CIS <cis(zv)atlas(tec)cz> - 8.8.2002 13:30:00

Hi,
potreboval bych poradit jak pres procedury v IB6 zapisovat Master a Detail
tabulky. Jak je to v tomto pripade s transakci?

dik ale�

OT: QReport a vice stran na jednu

[*] Pavel Mattivi <pmattivi(zv)dezadata(tec)cz> - 8.8.2002 13:41:03

Zdravim,
Potrebuju tisknout klasicke QReporty tak, aby se tiskly vickrat na jeden
list papiru (nastaveni ovladace tiskarny) a nevim kde to presne nastavit.
Nyni, kdyz v PrinterSetup dialogu nastavim tisk napr. 4 stran naraz ve
vlastnostech tiskarny a nasledne z aplikace tisknu, nastaveni se neprojevi a
vytisknou se 4 klasicke stranky.
Jestli ma nekdo zkusenosti, pripadne ukazku, budu vdecny.
Dekuji predem za pomoc.

Pavel Mattivi

(Ne)vsemocna konstrukce try...except

[*] "Mirek Drej�ek" <drejcek(zv)schkocr(tec)cz> - 08.8.2002 12:56:44

Zdravim,
sice neporadim, ale mam take jednu zkusenost. Asi pred rokem jsem mel take blok Try.... Except. Fungovalo to skvele. Dokud jsem program nespustil na PC s procesorem AMD. Tam to zacalo padat, jako bych tam nic nemel.
Takze opravdu neni tak vsemocna.

Mirek Drejcek

*********** REPLY SEPARATOR ***********

On 8.8.2002 at 10:43 Pawell None wrote:

>Zdravim a prosim o radu.
>Udelal jsem konstrukci try...except se zasadni chybou:
>
>procedure TForm1.proc2;
>var
> List: TStringList;
>begin
> try
> List := TStringList.Create;
> with List do
> try
> Proc3;
> finally
> Free;
> end;
>
> List.Add('a'); // <------------------
> except
> proc4;
> end;
>end;
>
>Ocekaval jsem, ze aplikace diky teto konstrukci bude schopna chybu
>zpracovat
>a pokracovat dale bez problemu. To take na prvnich nekolik prubehu projde,
>ale necham-li to udelat nekolikrat za ssebou, aplikace vzdy spadne.
>
>Vite nekdo, proc to konstrukce nezpracuje a co by se s tim dalo delat?
>Konstrukce try...except neni tak vsemocna, jak jsem predpokladal?
>
>diky
>Pavel Blahovec

(Ne)vsemocna konstrukce try...except

[*] bardon <bardon(zv)akord-soft(tec)cz> - 8.8.2002 14:25:28

Nejsem na tohle expert, ale tipnul bych si, ze to teoreticky jeste v pameti
je, jen se to uvolnilo pro pristi pouziti. Kdybys dal misto
List.Free
FreeAndNil(List)
tak by to chybu vygenerovalo. Nekamenuj me, jestli jsem mimo prosim.

-----Original Message-----
From: delphi-l-owner(zv)clexpert(tec)cz [mailto:delphi-l-owner(zv)clexpert(tec)cz]On
Behalf Of Zbysek Hlinka
Sent: Thursday, August 08, 2002 1:24 PM
To: delphi-l(zv)clexpert(tec)cz
Subject: Re: (Ne)vsemocna konstrukce try...except


On 8 Aug 2002 at 11:56, MarekFi wrote:

> > Udelal jsem konstrukci try...except se zasadni chybou:
> >
> > procedure TForm1.proc2;
> > var
> > List: TStringList;
> > begin
> > try
> > List := TStringList.Create;
> > with List do
> > try
> > Proc3;
> > finally
> > Free;
>
> tedy LIST uvolnis z pameti
>
> > end;
> >
> > List.Add('a'); // <------------------
>
> a tady s nim chces pracovat?????

Vsak o to jde, proc to neustoji except?

> > except
> > proc4;
> > end;
> > end;

S pozdravem

Zbysek Hlinka


NestedDataset u ClientDataSetu

[*] Michal Sefcik <sefcik(zv)benefitcz(tec)cz> - 8.8.2002 14:42:17

Vim, ze toto lze. Nicmene tento DataSource nepouziji spolu
s Master-DataSourcem na jednom BDControlGridu!!

************************************************************
Ing.Mgr. Michal Sefcik
Benefit CZ, s.r.o.
Hrub�ho 11, 612 00 Brno
tel: +420 5 41219098, 9
fax: +420 5 41215886
http: www.benefitcz(tec)cz
************************************************************
----- Puvodni zprava -----
Od: "CIS" <cis(zv)atlas(tec)cz>
Komu: <delphi-l(zv)clexpert(tec)cz>
Odeslano: 8. srpna 2002 13:27
Predmrt: Re: NestedDataset u ClientDataSetu


> HI,
> delam to tak, ze si detaily primojim pres tdataSource a je to
> ales

NestedDataset u ClientDataSetu

[*] CIS <cis(zv)atlas(tec)cz> - 8.8.2002 14:54:56

Tak to jo. ControlGrid je celkem k nicemu.
ales

----- Original Message -----
From: "Michal Sefcik" <sefcik(zv)benefitcz(tec)cz>
To: <delphi-l(zv)clexpert(tec)cz>
Sent: Thursday, August 08, 2002 2:42 PM
Subject: Re: NestedDataset u ClientDataSetu


> Vim, ze toto lze. Nicmene tento DataSource nepouziji spolu
> s Master-DataSourcem na jednom BDControlGridu!!
>
> ************************************************************
> Ing.Mgr. Michal Sefcik
> Benefit CZ, s.r.o.
> Hrub�ho 11, 612 00 Brno
> tel: +420 5 41219098, 9
> fax: +420 5 41215886
> http: www.benefitcz(tec)cz
> ************************************************************
> ----- Puvodni zprava -----
> Od: "CIS" <cis(zv)atlas(tec)cz>
> Komu: <delphi-l(zv)clexpert(tec)cz>
> Odeslano: 8. srpna 2002 13:27
> Predmrt: Re: NestedDataset u ClientDataSetu
>
>
> > HI,
> > delam to tak, ze si detaily primojim pres tdataSource a je to
> > ales
>
>
>

D4 + IB6 (dialect 3) = Client SQL dialect 1 does n

[*] <little_bobes(zv)centrum(tec)cz> - 8.8.2002 15:50:58

Zdravim,

dnes jsem necekane narazil na problem.

Vytvoril jsem si v IB6 v dialektu 3 databazi.
V D4 c/s jsem si vytvoril jednoduchy programek pro editaci tabulek, kde
pouzivam TQuery a SQL:
SELECT *
FROM table

V prvni verzi databaze jsem pouzil datovy typ FLOAT, ale spatne to
zapisovalo desetinna cisla (jiz jsem zde drive resil).
Proto jsem jej predelal na DECIMAL (10,3).

Najednou ale muj programek hlasi:
"Client SQL dialect 1 does not support reference to 64-bit numeric datatype"

Znamena to tedy, ze pomoci D4 nemohu pracovat s urcitymi datovymi typy IB6?
Nebo je chyba nekde jinde?
Jak velky DECIMAL mam pouzit, abych se vesel do 32 bitu?

Diky za namety
Bob

IF... THEN ve Stored Procedure (FB)

[*] bleak <bleak(zv)atlas(tec)cz> - 8.8.2002 15:53:56

zdravim,
prosim o radu jak spravne pouzit v ulozene procedure podminku. Mam napr.
tuto proceduru:

BEGIN for
SELECT id_klienta,neco
INTO :id_klienta,:neco
DO SUSPEND;
IF (:neco IS NULL) THEN neco='hodnota' //toto nefunguje
END

a potrebuji, do vystupniho parametru 'neco' dosadit hodnotu pokud je 'neco'
NULL

bleak

P.S. kde najit nejake priklady ulozenych procedur, krom toho co je v
EmbedSQL.pdf a Interbase Reference.htm?

(Ne)vsemocna konstrukce try...except

[*] Karel Cibulka <KCibulka(zv)seznam(tec)cz> - 08.8.2002 16:19:00

Ahoj,

naprosto souhlasim s nasledujicim:

> Nejsem na tohle expert, ale tipnul bych si, ze to teoreticky jeste v pameti
> je, jen se to uvolnilo pro pristi pouziti. Kdybys dal misto
> List.Free
> FreeAndNil(List)
> tak by to chybu vygenerovalo.

> > > Udelal jsem konstrukci try...except se zasadni chybou:
> > >
> > > procedure TForm1.proc2;
> > > var
> > > List: TStringList;
> > > begin
> > > try
> > > List := TStringList.Create;
> > > with List do
> > > try
> > > Proc3;
> > > finally
> > > Free;

pokud totiz zavolas na nejaky objekt .Free, tak to NEZNAMENA, ze se
do teto promenne dosadi NIL nebo ze by se data na ktera ukazuje
vymazala 0ami. Promenna obsahuje stale puvodni odkaz (pointer) na
zruseny objekt, ale uz by se nemel pouzit. Problem je v tom, ze
ukazuje na puvodni datove struktury, ktere dokud nejsou prepsany
napr. dalsim volanim .Create nebo jakymkoliv jinym alokovanim
dynamicke pameti, takze obsahuji "spravne" hodnoty. Tj. muze se stat,
ze se pri odvolani na takovyto objekt tvari OK. Ale pozdeji to
najednou zacne padat.
Proto tedy - pokud chces vychytat pouziti nedovolene pouziti pameti,
tak k tomu castecne pomuze FreeAndNil (pokud ale nemas vice
promennych odkazujicich se na stejny objekt->problem)...

> > > end;
> > >
> > > List.Add('a'); // <------------------

Pak vyse uvedeny radek uz provadi neco jako "NIL.Add('a')" a to uz
zkolabuje vzdy...

> > > except
> > > proc4;
> > > end;
> > > end;
>

K.C.

______________________________________________________________________
Reklama:
Jake bude pocasi? http://pocasi.seznam(tec)cz

D4 + IB6 (dialect 3) = Client SQL dialect 1 does n

[*] Martin Schayna <mschayna(zv)aktis(tec)cz> - 8.8.2002 16:20:58

----- Original Message -----
From: <little_bobes(zv)centrum(tec)cz>
> Vytvoril jsem si v IB6 v dialektu 3 databazi.
> V D4 c/s jsem si vytvoril jednoduchy programek pro editaci tabulek, kde
> pouzivam TQuery a SQL:
> SELECT *
> FROM table
> Najednou ale muj programek hlasi:
> "Client SQL dialect 1 does not support reference to 64-bit numeric datatype"

Jestlize pouzivas pro napojeni na databazi BDE, coz odhaduji
podle TQuery, je to konecna -- BDE neumi pracovat v jinem
dialektu nez 1 a uz se dale nevyviji.

Pouzij treba IBX komponenty (viz vlastnost SQLDialect na
TIBDatabase), u nich by mel byt prechod z BDE pro takto
jednoduchou aplikaci v pohode.

Martin Schayna

ako urobit formular so sumami

[*] mato <mato.tino(zv)inmail.sk> - 8.8.2002 16:56:02

prepacte, mohli by ste mi objasnit este to treeView ? Prave o to mi ide.
Nechcelsom zostavu ale formular.

----- Original Message -----
From: "Ing. Pavel �ilinec" <zilinec(zv)email(tec)cz>
To: "mato" <delphi-l(zv)clexpert(tec)cz>
Sent: Thursday, August 08, 2002 11:22 AM
Subject: Re: ako urobit formular so sumami


> Predpokladam, ze formularem myslime oba report/sestavy, napr. QReport.
> Pak na zalozce QReport je QRGroup a pak pro hlavicku/paticku grupy je
> QRBand(tam se jen urci BandType a navaze se grupa).
> Pokud mate na mysli zobrazeni danych udaju na formulari (TForm), tak
> to uz zalezi na Tobe, jak si dana data zobrazis (napr. TreeView, ...)
> - tam si ale musis dane mezisoucty dopocitavat sam nebo si je nejak
> vytahnout v tom selectu.
>
> --------
> ing. Pavel Zilinec
> MailTo:zilinec(zv)email(tec)cz
>
> Prog-Soft s.r.o. Plzen
> Informacni system pro vyrobce
> a distributory napoju
>
> m> prepacte, tie grupy, to su ake komponenty.
>
>

Delphi 7 Announced

[*] Erik Salaj <winsoft(zv)stonline.sk> - 8.8.2002 17:30:04

> pre oboznamenie s .Net staci stiahnut 'Microsoft .NET Framework Software
> Development Kit' z
>
>
http://msdn.microsoft.com/downloads/default.asp?url=/downloads/sample.asp?ur
> l=/msdn-files/027/000/976/msdncompositedoc.xml&frame=true (131 Mb)
> potom staci obycajny Notepad na pripravu testovacich programov,
> je to divne ale funguje to fantasticky (aj konekt na MS SQL...)

k tomu sa da z Internetu stiahnut este open source editor pre C#
(nie je tam ale form designer ani debugger, je to len textovy
editor so spustanim command line C# kompilatora z .NET
SDK) - http://www.icsharpcode.net . Zase pre jednoduchsie
veci je to super, pre komplikovanejsie veci uz je vyhodnejsie
Visual Studio, predsa len obcas treba kod ladit, vizualny
navrh formulator znacne setri cas a takisto wizardy pre
generovanie datasetov a vselijake tie code-completion
funkcie odstranuju zbytocne pisanie.

Erik

FreeReport a dynamicky dataset

[*] Ales Pavel <Aldik(zv)quick(tec)cz> - 8.8.2002 18:27:56

Ahoj objevil jsem FreeReport a jsou skvelyyy,uzivatel si sam nadefinuje
sestavu pres designer...skvely... jen me rmouti, ze nevim jak ukladat i sql
select(dataset) ze ktereho sestava vzesla....
tj kdyz si otevru *.frf tak nemuzu pustit preview ani tisk.... protoze
nemam prislusny dataset a select...jak to resite vy..jde mi o to abych pri
ulozeni *.frf v designeru zaroven ulozil i select a pak si pri otevreni
udelal dataset naplnil ho daty a napojil na designer. Take bych chtel urcite
datasety zakazat, aby se mi nenabizeli v designeru....(jde predevsim o
datasety z pridruzenych unit).

Dekuji moc

Neumim to moc vysvetlit...ale urcite je tu nejaky machr co se se mnou spoji
a vysvetli mi to..please

Ales Pavel
D6 Ent WXP
laik v profesionalnim kolotoci

Trigger before delete IB/FB

[*] Ales Pavel <Aldik(zv)quick(tec)cz> - 8.8.2002 18:38:27

Mno ano hezke...ale pak uz z principu je lepsi ta moje stored
procedure...kterou volam na vymazani nebo nastaveni platnosti na N.
Protoze to uz pak zase musis o tehle exception vedet a na klientovi pak
zavolat,ze pri tehle chybe nastavit platnosti na 'N' to moje stored
procedure dela hned sama:-) nebo se pletu??


Mlasky

Ales Pavel
D6 Ent WXP
laik v profesionalnim kolotoci


Pavka Cisar wrote:

Vyjimka se definuje snadno, viz prikaz CREATE EXCEPTION. Vyvolani je take
snadne - EXCEPTION <jmeno_vyjimky>. Na klientovi se to projevi jako chyba /
vyjimka a je mozne odchytit jeji typ a text hlaseni (uzivatelsky text
spojeny s
vyjimkou) a nasledne ji ignorovat.

OT: Jak na rozliseni pod WinXP - Specha

[*] Delphi <kindrik(zv)centrum(tec)cz> - 8.8.2002 19:11:09

Omlouvam se za OT ale jiz jsem bezradny,
Muj problem je nasledujici mam grafiku Gforce 2 s Tvout a potreboval bych
svou app prepinat rozliseni a obnovovaci frekvenci
a zaroven zapnout "klonovani" primarniho monitoru na sekundarni .
napr.(z 1024x768 75Hz na 640x480 120hz)
Neresil jste nekdo takovy problem ,Prosim Pomozte.
Budu vdecny za jakoukoliv radu a predem dekuji za pomoc v nouzi.

Jiri B.
Delphi 5 pro, WinME,WinXp

Trigger before delete IB/FB

[*] Pavel Cisar <pcb(zv)atlas(tec)cz> - 8.8.2002 21:40:42

Haj hou!

On 8 Aug 2002 at 18:38, Ales Pavel wrote:

> Mno ano hezke...ale pak uz z principu je lepsi ta moje stored
> procedure...kterou volam na vymazani nebo nastaveni platnosti na N.
> Protoze to uz pak zase musis o tehle exception vedet a na klientovi pak
> zavolat,ze pri tehle chybe nastavit platnosti na 'N' to moje stored
> procedure dela hned sama:-) nebo se pletu??

Vyjimky lze zachytit i v ulozene procedure - viz prikaz WHEN.

S pozdravem
Pavel Cisar
Mobil: 0724 281429
http://www.ibphoenix(tec)cz
Vse co potrebujete pro Firebird a InterBase

IF... THEN ve Stored Procedure (FB)

[*] Milan Tome� <milan.tomes(zv)haida(tec)cz> - 8.8.2002 22:02:13

BEGIN
for SELECT id_klienta,neco
INTO :id_klienta,:neco DO
SUSPEND;
IF (:neco IS NULL) THEN :neco='hodnota' //toto nefunguje
---------------------- Tady ti chybela dvojtecka pred druhym "neco"
END

Milan Tomes

> zdravim,
> prosim o radu jak spravne pouzit v ulozene procedure
> podminku. Mam napr. tuto proceduru:
>
> BEGIN for
> SELECT id_klienta,neco
> INTO :id_klienta,:neco
> DO SUSPEND;
> IF (:neco IS NULL) THEN neco='hodnota' //toto nefunguje
> END
>
> a potrebuji, do vystupniho parametru 'neco' dosadit hodnotu
> pokud je 'neco' NULL
>
> bleak

Problematicky Drag and Drop pri ChceckBoxListe

[*] Jaroslav Popluhar <delphi1(zv)acc.sk> - 8.8.2002 23:04:08

Chcem pouzivat Drag and Drop medzi dvoma RxCheckListBoxami.
Robi mi to problem:

a. Ak DragMode = dmAutomatic
Drag and Drop funguje
Nejdu eventy OnMouseDown a OnClickCheck(a mozno aj ine - neskusal som) po
druhom kliku na ten isty items.
Na druhy klik sa nemeni property Checked- da sa zmenit len medzernikom.

b. Ak DragMode = dmManual
Drag and Drop funguje
Vsetko funguje ako ma, okrem vyberu viacerych Itemsov (multiselect) pomocou
klavesu Ctrl.
Po kliku na druhy Items sa tento neodznaci

S pozdravom
J. Popluhar


---
Odch�dzaj�ca spr�va neobsahuje v�rusy.
Skontrolovan� antiv�rusov�m syst�mom AVG (http://www.grisoft(tec)cz).
Verzia: 6.0.381 / V�rusov� datab�za: 214 - d�tum vydania: 4. 8. 2002

(Ne)vsemocna konstrukce try...except

[*] Pawell None <pawell.none(zv)atlas(tec)cz> - 9.8.2002 02:50:18

Dekuji, potvrdili jste muj predpoklad. Konstrukce try...except neni
vsemocna.

Proc o tom mluvim. Delsi dobu ladim svoji aplikaci (mnozi zaregistrovali
;-))). Daval jsem zde dotazy ohledne problemu pri praci s thready a pristupu
na databazi, konkretne na mysql. To jsem jiz asi vyresil. Dosel jsem k tomu,
ze mylib.dll neni reentrantni a vsechny zakladni volani jsem zabezpecil
pomoci kritickych sekci a tim vyresil problem soucasneho pristupu.
Kazdopadne tady to uz nepada. Alespon ne casto.

Celou aplikaci jsem take prosel a vsechny Free jsem nahradil FreeAndNil
(tedy vsechny, kde to slo)
Casto totiz pouzivam konstrukci.

with TDlgMistaEdit.Create(Self) do
try
ShowModal;
finally
Free;
end;

Zde to prirozene nema smysl.

Ovsem, proc jsem se vlastne zacal zabyvat tou konstrukci. Aplikace mi zcela
nahodne, nepravidelne a samozrejme u zakaznika pada na pro me
nepochopitelnou chybu. Vzdy stejne, pokazde u jineho formu. Vse je zrejme z
vypisu logu:

8. 8.2002 18:24:50:759: * inicializace metody 'TDlgMistaEdit.Destroy'
8. 8.2002 18:24:51:040: * zru?eni formulare 'DlgMistaEdit'
8. 8.2002 18:24:51:040: * inicializace metody 'TFrmSelectFirma.Destroy'
8. 8.2002 18:24:51:040: * dokonceni metody 'TFrmSelectFirma.Destroy'
8. 8.2002 18:24:51:040: * dokonceni metody 'TDlgMistaEdit.Destroy'
8. 8.2002 18:24:51:660: !!! Kriticka chyba: Access violation at address
0043F6CD in module 'Briga.exe'. Read of address 00098053. !!!
8. 8.2002 18:24:51:660: Exception class: EAccessViolation
8. 8.2002 18:24:51:660: Exception address: 0043F6CD
8. 8.2002 18:24:51:660: IsMainThread: True
8. 8.2002
18:24:51:660: --------------------------------------------------------------
--------------------------------------
8. 8.2002 18:24:51:660: Stack list, generated 8.8.2002 18:24:50
8. 8.2002 18:24:51:660: [0043F6CD] Controls.TControl.ScreenToClient (Line
3276, "Controls.pas" + 1) + $6
8. 8.2002 18:24:51:660: [00403FD5] System.(zv)HandleAnyException (Line 4400,
"system.pas" + 14) + $0
8. 8.2002 18:24:51:660: [00462DFF] Forms.TraverseClients (Line 4835,
"Forms.pas" + 5) + $38
8. 8.2002 18:24:51:660: [00462E6C] Forms.TCustomForm.CMActionUpdate (Line
4848, "Forms.pas" + 3) + $2B
8. 8.2002 18:24:51:660: [0043DEF0] Controls.FindDragTarget (Line 2615,
"Controls.pas" + 6) + $10
8. 8.2002 18:24:51:660: [00466BC4] Forms.TApplication.DoMouseIdle (Line
6905, "Forms.pas" + 2) + $A
8. 8.2002 18:24:51:660: [00466C95] Forms.TApplication.Idle (Line 6926,
"Forms.pas" + 1) + $8
8. 8.2002 18:24:51:660: [00466D5C] Forms.TApplication.Idle (Line 6937,
"Forms.pas" + 12) + $26
8. 8.2002 18:24:51:660: [00466363] Forms.TApplication.HandleMessage (Line
6650, "Forms.pas" + 2) + $0
8. 8.2002 18:24:51:660: [00462941] Forms.TCustomForm.ShowModal (Line 4693,
"Forms.pas" + 23) + $0
8. 8.2002 18:24:51:660: [004629CF] Forms.TCustomForm.ShowModal (Line 4700,
"Forms.pas" + 30) + $9

Formular je vytvoren podle vyse uvedene konstrukce. Potiz je ta, ze naprosto
posledni vec, ktera se provadi v destruktoru je zapis do logu "dokonceni
metody destroy". Dal by mel po ukonceni uvolneni nasledovat vypis ve
volajicim formulari, ktery uz ovsem nevznikne. Kouknete-li se na vypis
zasobniknu, ktere vygeneruje JEDI, pak ja chapu to, ze byla vyvolana nejaka
udalost inicializovana mysi, ktera jeste dohleda objekt (form) ktery rusim
(nebo uz je zrusen) a pak si na tom klidne zavola metodu "ScreenToClient" -
coz padne. Napada Vas nekoho, cim by to mohlo byt???

Jedine co me napadlo, jsou hinty. Uzivatel totiz klikne na tlacitko ok
(obsahuje samozrejme hint), tim se zacne formular ukladat (coz je drobna
prodleva) a shodnou okolnosti se cas pro vyvolani hintu shodne s casem
ruseni (ta nahoda se ovsem stava dost casto).

pozn. samozrejme jsem zkusil vypnout hinty, ale vysledek bude znam az za
nekolik dni, nez se verze rozdistribuje.
pozn2. v dany okamzik nebezi zadny thread, proste nic, idealni stav

dik
Pavel

FreeReport a dynamicky dataset

[*] Petr Palicka <petr.palicka(zv)atlas(tec)cz> - 9.8.2002 06:55:21

ahoj,

no, sice pouzivam SINEA reports, ale princip
je podobny. sestavu ukladam do dvou souboru.
v jednom je definice sestavy a v druhym SQL
dotaz. pak mam jednu procedurku pro tisk,
kterou volam s parametry "sestava" a "SQL".
procedurka nacte SQL, pripadne se popta po
parametrech a otevre nejakou query s nactenym
dotazem. pak se zavola preview (nebo edit)
sestavy.

peca

IF... THEN ve Stored Procedure (FB)

[*] Kalhous Zdenek <zdenek.kalhous(zv)comarr(tec)cz> - 9.8.2002 07:09:09

On 8 Aug 2002 at 22:02, Milan Tome� wrote:

> BEGIN
> for SELECT id_klienta,neco
> INTO :id_klienta,:neco DO
> SUSPEND;
> IF (:neco IS NULL) THEN :neco='hodnota' //toto nefunguje
> ---------------------- Tady ti chybela dvojtecka pred druhym "neco"
Spis bych rekl, ze musi byt nejdriv dosazeni IF a pak teprv
SUSPEND. Ta puvodne chybejici dvojtecka by vadit nemela - nutna
je jen v selectech, v prikazech SP nevadi ale nutna neni.
> END
>
> Milan Tomes
>
> > zdravim,
> > prosim o radu jak spravne pouzit v ulozene procedure
> > podminku. Mam napr. tuto proceduru:
> > a potrebuji, do vystupniho parametru 'neco' dosadit hodnotu
> > pokud je 'neco' NULL
> > bleak

TRichEdit

[*] Libor Filip <filip(zv)agrokonzulta(tec)cz> - 9.8.2002 07:36:57

Ahoj,
resim nasledujici problem. Uzivatel pise text do TRichEdit a potrebuje
informaci, jestli se
obsazeny text vejde na jednu stranu predvolene tiskarny. Mate nekdo napad
jak to resit?

Libor

IF... THEN ve Stored Procedure (FB)

[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 9.8.2002 07:37:52

> BEGIN for
> SELECT id_klienta,neco
> INTO :id_klienta,:neco
> DO SUSPEND;
> IF (:neco IS NULL) THEN neco='hodnota' //toto nefunguje
> END
>

Patrne to ma byt takto:

BEGIN
for SELECT id_klienta,neco ... INTO :id_klienta,:neco
DO
begin
IF (:neco IS NULL) THEN neco='hodnota';
SUSPEND;
end
END

David Lebeda

TRichEdit

[*] ing. Jan Fiala <jan.fiala(zv)iol(tec)cz> - 9.8.2002 07:39:34

Asi bude nejrozumnejsi implementovat nejake preview.
Potrebujes to vykreslit na Canvas, ktery ma stejne nastaveni jako
Canvas tiskarny.
Na www.torry.net byly nejake komponenty

--
Jan Fiala
mailto:jan.fiala(zv)iol(tec)cz

9.8.2002 Libor Filip:
> Ahoj,
> resim nasledujici problem. Uzivatel pise text do TRichEdit a potrebuje
> informaci, jestli se
> obsazeny text vejde na jednu stranu predvolene tiskarny. Mate nekdo napad
> jak to resit?

> Libor

Trigger before delete IB/FB

[*] Lebeda David <david.lebeda(zv)comarr(tec)cz> - 9.8.2002 07:44:01

> Mno ano hezke...ale pak uz z principu je lepsi ta moje stored
> procedure...kterou volam na vymazani nebo nastaveni platnosti na N.

Ahoj,

to mas naprostou pravdu. Trigger before delete se naprosto nehodi k tomu, abys
teprve rozhodoval, zda vubec vymaz provadet. V takovem pripade je potreba vsem
zakazat pravo na delete v te tabulce a dovolit to jen te ulozene procedure. V
procedure se teprve rozhodujes, zda vubec DELETE zavolat, kdezto trigger se
vyvola az tehdy, kdyz uz to DELETE nekdo zkusil pouzit, coz je uplne jina situace.

David Lebeda

(Ne)vsemocna konstrukce try...except

[*] Pavol Kakacka <kakacka(zv)proca(tec)cz> - 9.8.2002 08:05:36

From: "Pawell None" <pawell.none(zv)atlas(tec)cz>
> Dekuji, potvrdili jste muj predpoklad. Konstrukce try...except neni
> vsemocna.

Vsemocna nie, mas pravdu, ale to plati zpravidla pri metodach FormCreate() a
v sekciach finalization a initialization, v priapde ktory popisujes je
problem inde.

> Proc o tom mluvim. Delsi dobu ladim svoji aplikaci (mnozi zaregistrovali
> ;-))). Daval jsem zde dotazy ohledne problemu pri praci s thready a
pristupu
> na databazi, konkretne na mysql. To jsem jiz asi vyresil. Dosel jsem k
tomu,
> ze mylib.dll neni reentrantni a vsechny zakladni volani jsem zabezpecil
> pomoci kritickych sekci a tim vyresil problem soucasneho pristupu.
> Kazdopadne tady to uz nepada. Alespon ne casto.

Pouzivame mySQL a bez problemov. S try...except..finally to zase netreba
prehanat. Pri funkciach ktore sa volaju opakovane prilis casto to je skor
negativne nez pozitvne .. kazdy try..e/f zabera viacej casu.

> Celou aplikaci jsem take prosel a vsechny Free jsem nahradil FreeAndNil
> (tedy vsechny, kde to slo)

Toto je zbytocne. Prvotne riesenie problemov v tomto pripade je spravna
konstrukcia prikazov

> Casto totiz pouzivam konstrukci.
>
> with TDlgMistaEdit.Create(Self) do
> try
> ShowModal;
> finally
> Free;
> end;
>
> Zde to prirozene nema smysl.

Doporucujem NEPOUZIVAT with! Jeho pouzitie sposobuje problemy. Ziaden
programator (s ktorym sa v praxi stretol) si nedokaze dlhsiu dobu
zapamatovat pravidla ktore platia pri zapisu with a skor ci neskor v nom
naseka chyby. A i keby si pamatoval pravidla akonahle u prikazu with zmenis
objekty s ktorymi a pod ktorymi pracuje (pridas/premenujes) meody dojde k
problem ze sa budu spustat metody ktore su z ineho objektu!!! a dalsie
problemy...

> Ovsem, proc jsem se vlastne zacal zabyvat tou konstrukci. Aplikace mi
zcela
> nahodne, nepravidelne a samozrejme u zakaznika pada na pro me
> nepochopitelnou chybu. Vzdy stejne, pokazde u jineho formu. Vse je zrejme
z
> vypisu logu:
>
> 8. 8.2002 18:24:50:759: * inicializace metody 'TDlgMistaEdit.Destroy'
> 8. 8.2002 18:24:51:040: * zru?eni formulare 'DlgMistaEdit'
> 8. 8.2002 18:24:51:040: * inicializace metody 'TFrmSelectFirma.Destroy'
> 8. 8.2002 18:24:51:040: * dokonceni metody 'TFrmSelectFirma.Destroy'
> 8. 8.2002 18:24:51:040: * dokonceni metody 'TDlgMistaEdit.Destroy'
> 8. 8.2002 18:24:51:660: !!! Kriticka chyba: Access violation at address
> 0043F6CD in module 'Briga.exe'. Read of address 00098053. !!!

> Jedine co me napadlo, jsou hinty. Uzivatel totiz klikne na tlacitko ok
> (obsahuje samozrejme hint), tim se zacne formular ukladat (coz je drobna
> prodleva) a shodnou okolnosti se cas pro vyvolani hintu shodne s casem
> ruseni (ta nahoda se ovsem stava dost casto).

V tomto pripade skus na uvolnenie formu pouzit miesto Form.Free metodu
Form.Release (viz. Hep).

Kakacka Pavol
KasiX(zv)atlas(tec)cz

Probl�my s datab�z�

[*] Rumcajs - konference <konrum(zv)seznam(tec)cz> - 9.8.2002 08:12:31

Servus ve spolek....
Jiz delsi dobu si marne lamu hlavu s tim, jakou nejspolehlivejsi databazi
(jaky typ) mam pouzivat. Pouzival jsem komponentu TDbf - byly s ni problemy,
ted jsem pouzival TTable + dBase tabulky - dost casto se ta tabulka poskodi,
a nyni zkousim Dao a MSAcces, ale predbezne je tu ten stejny problem -
zakaznikovy "zatuhne" pocitac a obsluhu (vesmes radne nezaskolena) provede
tvrdy reset - vysledkem je, ze se tabulka "rozlomi" - prvni pul se hlasi
jako ona tabulka, druha pul visi nekde "v lufte" a uz do ni nic nedostanu.
Zkuste doporucit nejaky ucinny system - SQL zatim nepouzivam (ucim se s tim
delat).
Servus Rumcajs


---
Odchoz� zpr�va neobsahuje viry.
Zkontrolov�no antivirov�m syst�mem AVG (http://www.grisoft(tec)cz).
Verze: 6.0.380 / Virov� b�ze: 213 - datum vyd�n�: 24.7.2002

D4 + IB6 (dialect 3) = Client SQL dialect 1 does n

[*] <little_bobes(zv)centrum(tec)cz> - 9.8.2002 08:15:18

To se lehce rekne, ale kde mam sehnat verzi pro D4?
Zatim jsem nasel pouze pro D5.

Bob

>
> Pouzij treba IBX komponenty (viz vlastnost SQLDialect na
> TIBDatabase), u nich by mel byt prechod z BDE pro takto
> jednoduchou aplikaci v pohode.
>
> Martin Schayna
>

© Delphi.cz, program netcode.cz, 2008-9.