Hirdetés
- Felháborodott az Apple, a Meta az iPhone-felhasználók üzeneteit akarja olvasni
- A luxusmárkáknak kell a bitcoin, az USA jegybankjának nem
- Letiltja az USA a politikusokat a telefonhívásokról és szöveges üzenetekről
- Nagy áttörés jön a napelemek piacán, nem kell annyi hely a paneleknek
- Belenyúlt az USA az Epic Games igazgatótanácsába, nyomoz az NVIDIA
Új hozzászólás Aktív témák
-
bucsupeti
senior tag
válasz Calogero #1999 üzenetére
onClose eseményben:
begin
CopyFile(PChar('c:\A\*.txt'), PChar('c:\B\'), False);
CopyFile(PChar('c:\A\*.db'), PChar('c:\B\'), False);
end;Egyébként az is megoldás lehet, ha készítesz egy batch fájlt a program indítására, amibe a végén megoldod a másolást a copy paranccsal.
"Nem gond ha nem vágod a párologtatók bináris nyelvét..."
-
Calogero
addikt
Sziasztok
Van nekem egy A könyvtárba txt és db kiterjesztésű file-k.
Ezeket szeretném a program kilépésekor átmásolni egy B könyvtárba, és ha már ebben a könyvtárban létezik olyan nevű file, akkor azokat felül írja.Előre is köszönöm.
-
mili84me
újonc
sziasztok, én abszolut nem vagyok jártas programozásba, ezért kérnék egy hatalmas segítséget.
Scar divi be kellene futattnom egy adott forráskodot.
ez egy bot program lenne, a lényeg h vhogy rá kellene illesztenem a koordinácios paramétereket de nem tudom hogyan és hova.
ezuton kérnék egy programozó segítségét aki elmondaná hogy kell csinálni.
A forráskodot el is küldeném hogy tudja miről van szó.Köszönöm
-
mekker
őstag
Ezzel is jól alakítja át az URL-t, de nem az a baja, hanem a letöltéssel van valami.
Synapsesal is, meg most ezzel is.
A karakterkódolással lehet a baj, mert ilyeneket mond bele a szövegbe a robothang (ékezetes betűk helyére), hogy "szerzői jog", "negyed", "bekezdésjel", "plusz", "mínusz" ,stb.
Böngészőbe jól menti le és jól játssza le a program vágólapozott linkeit.Данное сообщение (материал) создано и (или) распространено иностранным средством массовой информации, выполняющим функции иностранного агента, и (или) российским юридическим лицом, выполняющим функции иностранного агента.
-
mekker
őstag
Köszönöm a választ!
Még abban kéne segítség, hogy Lazarus IDE-hez használom a Synapse libraryt, hogy letöltse a hangfájlt a Google fordítóról, de hiába a jól lefordított url link - a böngészők jól lejátszák a vágólapozott linket -, továbbra is beleolvas speciális karaktereket/más betűket az ékezetes karakterek helyére (a letöltött mp3-ban).
Mit kéne csinálni, hogy a normális hangájlt töltsön le?
(VLC-nek is van Chromehoz egy lejátszó-pluginja és az is ezt produkálja egyébként)[ Szerkesztve ]
Данное сообщение (материал) создано и (или) распространено иностранным средством массовой информации, выполняющим функции иностранного агента, и (или) российским юридическим лицом, выполняющим функции иностранного агента.
-
zka67
őstag
Szia, így:
Uses HTTPApp;
procedure TForm1.Button1Click(Sender: TObject);
const S : string = 'Árvíztűrő tükörfúrógép';
begin
Memo1.Lines.Add( S );
Memo1.Lines.Add( HTTPEncode( UTF8Encode(S) ) );
end;A példa kimenete:
Árvíztűrő tükörfúrógép
%C3%81rv%C3%ADzt%C5%B1r%C5%91+t%C3%BCk%C3%B6rf%C3%BAr%C3%B3g%C3%A9p -
mekker
őstag
Sziasztok!
Olyan problémám lenne, hogy van a Google fordítónak egy felolvasó funkciója
http://translate.google.com/translate_tts?tl=hu&q= ezután meg a szöveg
Az URL-nél átalakítja a spacet, meg az ékezetes karaktereket %+hexadecimális ASCII-kódszám formátumba
Bekérek egy szöveget, és azt akarom átalakítani úgy, hogy az ékezetek az URL formátumában legyenek.
A space az így néz ki: %20 , azt át is alakítja, de az ékezeteseket máshogy kódolja
pl.:árvíz %C3%A1rv%C3%ADz --> á=%C3%A1
Hogyan tudom az ékezetes karaktereket ilyen formába átalakítani?Данное сообщение (материал) создано и (или) распространено иностранным средством массовой информации, выполняющим функции иностранного агента, и (или) российским юридическим лицом, выполняющим функции иностранного агента.
-
papasoft80
tag
válasz papasoft80 #1991 üzenetére
Már igen régóta próbálkoztam és végső elkeseredésben írtam ide.
A megoldás az volt, hogy beállítottam a path-ba az OCI útvonalát és megadtam az NLS_LANG-ot a rendszerváltozókhoz. Úgy látom, hogy az ADO-s kapcsolat megy rendesen. -
papasoft80
tag
Sziasztok!
Szeretném megkérdezni a nagyérdeműt, hogy mi a javaslat az alábbiakra.
Az eredeti felállás Delphi6 program ADO-val Oracle Client-el az Oracle 8 adatbázishoz.
Az Oracle 8 kiesett a képletből, helyette Oracle 11g R2 van.
Nem szeretnék Oracle Client-et telepíteni minden kliens gépre, ezért az Oracle Instant Client-et gondoltam használni, de az ADO köp egy nagyot rá.
A legkisebb ráfordítással szeretnék átállni. Vagyis be lehet-e állítani úgy a dolgot, hogy az ADO használja az Oracle Instant Client-et. Ha nem, akkor mi a javaslat? Delphi 7 is szóba jöhet, de az afelettieket már nem ismerem.
Előre is köszönöm a válaszokat! -
D@ni88
addikt
Sziasztok.
ShellExecute(0, PChar('print'), PChar(APath), PChar('/t /s'), nil, 0);
Újabb fejlemény: Öröm és boldogság, mert ugye működik, de a tesztelés során olyan hibát találtam hogy kb a 50-100x shellexecute hívás után mintha nem történne semmi, nem nyomtat. (reader megnyílik)
-
Calogero
addikt
Sziasztok!
Van 1db MaskEdit-em amelynek ez lenne a maszkja : 99999999-9-99;1;
Azt hogy tudom megoldani, hogy amíg nincs kitöltve a helyesen addig ne lehessen tovább lépni, illetve jelenjen meg egy üzenet hogy az adószám nincs jól kitöltve?Előre is köszönöm.
-
Phvhun
őstag
Eléggé elpusztultnak tünik a topik, de hátha alapon van egy kérdésem, amit [itt] tettem fel.
Valaki ötlet?
-
D@ni88
addikt
-
félisten
-
D@ni88
addikt
válasz Fire/SOUL/CD #1981 üzenetére
Ok, kipróbáltam, de minden nyomtatás után be kell zárnom a readert és csak azt követően nyitja meg az új pdf-et és küldi a nyomtatóra...
-
félisten
Ezen nincs mit "érteni"... Sajnos ez is egy user error. A ShellExecute egyértelmű: [link]
Az, hogy ettől eltérsz vagy nem tudod, hogy hogyan kell alkalmazni, az user errror...
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
D@ni88
addikt
válasz Fire/SOUL/CD #1981 üzenetére
Végül rájöttünk, hogy működik a story.
A probléma akkor áll fent, ha XPS writer, vagy Microsoft Office Document Image Writer van beálíltva alapértelmezett nyomtatónak. Ha fizikai nyomtató, akkor köpi rendesen a nyomtatványokat...Eléggé érdekes...
-
félisten
ShellExecute(0, PChar('print'), PChar('d:\valami.pdf'), nil, nil, SW_HIDE);
(A PDF-nek társítva kell lennie egy alkalmazáshoz, ami automatikusan megnyitja. Az mindegy, hogy a W8 beépített PDf olvasója vagy a Foxit vagy az Acrobat...)
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
D@ni88
addikt
Sziasztok.
Még mindig nyomtatással szenvedek:
ShellExecute(0, 'open', 'acrord32', Pchar('/p /h c:\proba.pdf'), nil, 0);A parancs néha működik néha nem! Ha nem működik akkor is elküldi a readernek, megjelenik az open recent file-ok között, de nyomtatni nem nyomtat!
-
félisten
Már mint a raktár progira írod hogy "ősi" vagy a DBF Commander-re? (Ez utóbbi biztosan fut W8/8.1 x64 alatt is)
Ha a raktárprogiról van szó, azt meg ki kell próbálni. Ha valóban Delphi-ben íródott és telepítős, akkor fel kell települni a Borland Database Engine-nek is (BDE), az meg okozhat meglepetést.
Ettől függetlenül próbáld meg, ha nem menne, akkor meg Virtuális gépen biztosan futni fog(egy ezeréves Delphi 7-ben írt progim szorult fejlesztésre, ami szintén adatbázis jellegű, semmi gond(W8 x64 alatt Virtualbox)Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
klambi
addikt
válasz Fire/SOUL/CD #1977 üzenetére
köszönöm a választ! és 64 bites w7 nél, ezeknek az "ősi" programoknak, elég ha csak xp módban futtatom?
valamit kell még valamit a raktár program mellé installálni?"Mond szépen angolul: Gyors róka!"
-
félisten
1. Ezzel a progival próbáld megnyitni a DBF fájlokat, hogy kiderüljön, hogy valóban adatbázis fájlok, nem csak a kiterjesztésük az. DBF Commander
2. A DBF az csak egy típusú adatbázis a sok közül, nem csak "Delphi-ben" használatos.UI: Ha az adatbázis jelszóvédett, akkor azt ki kell deríteni, avagy (ez bevett szokás) a raktárprogi esetleg jelszót kér indításakor, amely jelszó egyben az adatbázis jelszava is.
[ Szerkesztve ]
Mindenki tudja, hogy bizonyos dolgokat nem lehet megvalósítani, mígnem jön valaki, aki erről nem tud, és megvalósítja. (Albert Einstein)
-
klambi
addikt
szevasztok!
olyan gondba ütköztem, hogy van 1 (raktár)program ami csak simán .dbf fájlba dolgozik, újra kellene dobnom a gépeket, eléggé ősiek, és azt nem tudtam kideríteni, hogy ehhez milyen adatbázis kezelő kellene, ha kell egyáltalán, mert ugye ez delphi adatbázis kezelése. Csak simán kell egy borland shared vagy mi hozzá?
bocs a nyers fogalmazásért, de csak felületi ismereteim vannak...."Mond szépen angolul: Gyors róka!"
-
zka67
őstag
Szia, ezt próbáld ki, nekem működik:
function Execute(FileName, Params : string; Show : integer = SW_HIDE) : boolean;
var
SEInfo: TShellExecuteInfo;
ExitCode: DWORD;
begin
FillChar(SEInfo, SizeOf(SEInfo), 0) ;
SEInfo.cbSize := SizeOf(TShellExecuteInfo) ;
with SEInfo do begin
fMask := SEE_MASK_NOCLOSEPROCESS;
Wnd := Application.Handle;
lpFile := PChar(FileName) ;
lpParameters := PChar(Params);
nShow := Show;
end;
if ShellExecuteEx(@SEInfo) then begin
repeat
Application.ProcessMessages;
GetExitCodeProcess(SEInfo.hProcess, ExitCode) ;
until (ExitCode <> STILL_ACTIVE) or Application.Terminated;
Result := true;
end
else begin
ShowMessage('Program file not found!') ;
Result := false;
end;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
Execute('acrord32', 'filename.pdf', SW_NORMAL);
end; -
D@ni88
addikt
Sziasztok.
Szeretnék pdf-et nyomtatni delphiből
ShellExecute(0, 'open', 'acrord32', PChar('/p /h ' + 'c:\proba.PDF'), nil, SW_HIDE);
DeleteFile('c:\proba.PDF');parancs működik debugnál, ha elég időt várok, futásnál mire végigmenne a nyomtatási process, az előtt már törli is a fájlt, így a nyomtatás nem lehetséges.
A másik irány amin elindultam, hogy megvárjam a win process lefutását, de valamiért nem jön össze (még a fájl megnyitása sem:
procedure TTest_frm.bCloseClick(Sender: TObject);
var
Info: TShellExecuteInfo;
pInfo: PShellExecuteInfo;
exitCode: DWord;
begin
{Pointer to Info}
pInfo := @Info;
{Fill info}
with Info do
begin
cbSize := SizeOf(Info);
fMask := SEE_MASK_NOCLOSEPROCESS;
wnd := Application.Handle;
lpVerb := 'open';
lpFile := PChar('acrord32.exe');
{Parametros al executable}
{Executable parameters}
lpParameters := 'c:\proba.PDF';
lpDirectory := NIL;
nShow := 0;
hInstApp := 0;
end;
{Execute}
ShellExecuteEx(pInfo);
{Wait to finish}
repeat
GetExitCodeProcess(pInfo.hProcess,exitCode);
Application.ProcessMessages;
until (exitCode <> WAIT_TIMEOUT);
end;Esetleg valaki tudna segíteni?
-
D@ni88
addikt
Sziasztok.
Van egy lekérdezés ami kb 25000 sort ad vissza. Nincs semmi feltétel (select * from table).
BDE-vel azonnal megtörténik az Query.open míg ADOval kb 3-4s.
Valaki tudja mért lehet ez? Pedig ugye az ADO elvileg gyorsabb
-
D@ni88
addikt
Sziasztok.
Van egy delphi 6-s alkalmazás, kb 10 éves ami állandó szépítés és fejlesztés alatt áll.
Azt vettük észre, hogy egyes gépeken aránylag gyorsan, más gépeken viszont nagyon lassan működik az alkalmazás.
(Nem csak XP és Win7-en futás közt van különbség, hanem azonos oprendszerrel rendelkező gépeknél is).Logoltuk a lekérdezéseket, de úgy tűnik, hogy nem azok futtatásával van probléma. A select-ek futtatási ideje ~ megegyezik. Így arra gondolunk, hogy az adatok betöltésénél lehetnek problémák.
BDE-t használunk.
Tudnátok segíteni, hogy mi lehet a probléma?
Üdv Dani -
fodi1
csendes tag
A téma: Adatfogadás a soros portról DELPHI7 -el, pld. PIC kártya felől, az adatok pc-n történő kijelzése, és feldolgozása miatt.
Történet:
Egy PIC es fejlesztővel készítettem egy AD konvertert, mely az adatokat a saját LCD kijelzőjén kijelzi, és továbbítja a soros porton keresztül a pc felé.
A PIC boardon egy potival modellezem a kimenő értéket. 10bites ad-ról lévén szó 2-től 2023-ig mutat az LCD a pic-kártyán a poti két végállásában.Probléma:
A pc-n elindított terminal nevű free programocska gyönyörűen kiírja a mért értékeket, alapból Hexában, ahogy küldöm HI_byte, és LO_byte, ill. ha akarom decimálisan is kijelzi.
Ez bizonyítja a PIC oldal működőképességét.
Ha viszont DELPHI7 ben olvasom ki az adatokat, csak grafikus ákom-bákomot kapok, vagy semmit, mely természetesen változik, a küldött számoknak megfelelően.
Mindenféle karakterkonverziót megpróbáltam, de csak nem kapom meg a várt számadatokat (2-1024ig).
Miért természetes a kis terminál programocskának amit a delphiben én nem tudok megoldani?Delphi kódot mellékelem.
Igen megtisztelnétek, ha megoldást kapnék kezdő létemre a problémámra.
// xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Function ComPortRead:string;
var c,i:integer;
BytesRead:dword;
st:string;
begin
BytesRead:=0;
if not ReadFile(ComHandle, RdBuff, SizeOf(RdBuff), BytesRead, nil) then begin
end;//st:='';
if BytesRead>0 then beginfor i:=1 to BytesRead do begin
st:=RdBuff[i-1];
end;
end;
ComPortRead:=st;
end;//hossz:=length(ComPortRead); // HOSSZ ?
//label6.Caption:=inttostr(hossz); // Kiírniread_ki:= ComPortRead;
kar1:=copy(ComPortRead,1,1); // Kivesszük az első karaktert
kar2:=copy(ComPortRead,2,1); // és a másodikat// Numerikussá alakítjuk
szam1:=strtoint(kar1);
szam2:=strtoint(kar2);// Szam1 viszaalakítása. (rotated Hi bits - Make back: to left)
szam1:= szam1 shl(8);// A Hi ls Lo szám összege adja a küldött értéket, a szám1-be tesszük
szam1:=szam1+szam2;// A kar1-be tesszük a stringgé visszaalakított számot
kar1:= inttostr(szam1);label6.Caption:=kar1; // Kiírni
-
D@ni88
addikt
Mitől lehet az, hogy néhány gépen működik az ADO, néhányon pedig azt írja hogy a "Szolgáltató nem található. Lehetséges, hogy a telepítés nem volt tökéletes"
-
kormost
csendes tag
Sziasztok!
Processhez tartozó ablakok és azok elemeinek bejárása?
Mivel a google nem nagyon tud segíteni (vagy csak én keresek rosszul), ezért itt kérek segítséget!
A címben feltett kérdésre keresem a választ. Próbáltam a következő API-kat siketelenül:
Getclassname
EnumWindows
Findwindow
Findwindowex
Getwindowés ehhez hasonló kódokat is, de sikertelenül!
Előre is köszönöm a segítségeteket!
-
zka67
őstag
A kérdésedet inkább itt tedd fel: Milyen program, ami ...?
-
pierci
csendes tag
Kedves Fórumozók!
A következőben szeretnék segítséget kérni:
Keresek egy olyan programot, ami figyelmeztet a névnapokra. Több protokoll listám van excelben, ezeket nem szeretném egyesével bepötyögni valamilyen alkalmazásba, mert 1500-2000 név van. Eddig... Nem elég, ha kiírja, hogy ma pl: István nap van, szűrje ki nekem az összes Pistát (a név mellé írt beosztással és munkahellyel) és jelezze. (legjobb lenne, ha e-mailben értesítene) Az pedig maga lenne a csoda, ha ugyanez működne mobilon is Létezik ilyesmi???Köszönöm a segítséget!
Üdv! -
-
Petyyyyy
addikt
Üdv urak!
Nem kispályás kérdésem lenne hozzátok. Egy kapcsolatot kell majd megvalósítani később egy MySQL adatbázishoz ami egy linux rendszerben van. A módszert ki akartam próbálni virtuális szerverrel. Az eltérés természetesen annyi, hogy más az adatbázis név és root-nak nincs jelszava. Wamp fent is van és Delphi 5-öt (azért mert csak ez van) használok hozzá. Az Itt található módon próbáltam a példaprogrammal, de nem működik. Arra gondoltam talán túl régi lehet a Delphi, a Wamp-ban található sql meg túl új neki...? Bármilyen ötletet szívesen fogadok.
Utóirat: próbáltam külső, létező szerverre is kapcsolódni, de úgy sem sikerült.Szemed az úton, pedál a padlón || Whatever, Im the star
-
zka67
őstag
Például ezzel az ingyenes komponenssel:
-
D@ni88
addikt
Vonalkódot kellene megjelenítenem (code128).
Delphiben hogy lehetséges? -
zka67
őstag
válasz hexameter93 #1954 üzenetére
Valószínűleg vírusod van, de ennek nem sok köze van a Delphi-hez.
-
hexameter93
csendes tag
Hali srácok tudom nem a legjobb hely de kéne egy kis segítség!Olyan problémám van,hogy nem birok semmit elindítani a gépemen mert mindenre azt írja,hogy: A program nem indult el mert a CRYPTBASE.dll hiányzik a számítógépről.(pedig találtam 3 ilyen fájlt is a gépemen) a Segítségeket előre is köszönöm!
-
D@ni88
addikt
Sziasztok.
Szeretnék egy kétoldalas nyomtatványt létrehozni, aminek a hátoldalán mindig fix szöveg jelenne meg.
TQuickRep-pel hogy lehet ezt megoldani?Köszi
-
oleslie
aktív tag
mutasd a kódot ahol
- a változókat deklarálod
- cellának értéket adsz (ha változóból töltöd fel akkor azt is ahol a cella értékadására használt változó beállítódik)
- a selcol/selrow értéke beállítódik
- próbálod kiolvasni a cella tartalmátaz én példámnál maradva. Ha értéket adsz abszolút módon (grid.Cells[1,1]="asd"; ), majd azt egy showmessage -val kiolvasod (showmessage(grid.Cells[1,1]); ), mit mutat?
[ Szerkesztve ]
Egyszerű életet élek. Ami üres megtöltöm, ami tele van kiűritem
-
oleslie
aktív tag
próbáltam, nekem működik. Ha mutatnál vmi kódrészletet, hogyan próbálod ...
StringGrid1.Cells[1,1]:='c1r1';
StringGrid1.Cells[1,2]:='c1r2';
StringGrid1.Cells[3,3]:='c3r3';
showmessage(stringgrid1.Cells[1,2]);
esetleg próbáld meg, hogy feldobsz a formra egy tmemo -t, és abba beírod a selcol/selrow értékeket, hogy mit próbál kiolvasni a programod, vagy a kiolvasás sorára beállítasz egy töréspontot, és megnézed mi a változók értéke (azt akarja kiolvasni, amit szerinted kell neki? biztos van érték a kiolvasni akart cellában? próbáltad "kézzel" /ctrl+f7/?)[ Szerkesztve ]
Egyszerű életet élek. Ami üres megtöltöm, ami tele van kiűritem
-
D@ni88
addikt
Sziasztok
StringGridből szeretném kinyerni az értékét.
i:= dbgDelivery.Cells[SelCol, SelRow];
mindig üres stringet kapok vissza attól függetlenül, hogy van e valami a mezőben..
Tudnátok segíteni?
Köszi
[ Szerkesztve ]
-
Jeti1
tag
Melyik az a legutolsó Delphi verzió, amelyik még BDE-t használt? Egyáltalán melyik a legfrissebb beszerezhető BDE verzió? Tudom, hogy nagyon régi technológia, de érdekel. Remélem tud valaki segíteni.
Ne várjunk a nevetéssel, amíg boldogok leszünk. Különben félő: meghalunk anélkül, hogy nevettünk volna. /La Bruyére/
-
TAZ155
csendes tag
Szia.
--------------------------------------------------------------------------------------
var
z2 :Integer;begin
z2:=StrtoInt(Edit2.text);
Edit3.Text := FloatToStr(ScrollBar1.Position*z2);end;
---------------------------------------------------------------------------------
Hozzáteszem nagyon kezdő vagyok a Delphi programozásban. De valahól el kell kezdeni!!??
-
zka67
őstag
Így:
procedure TFom_ini.Button2Click(Sender: TObject);
var z1,z2 : Real;
begin
DecimalSeparator := '.';
z1 := StrToFloat(Edit1.text);
z2 := StrToFloat(Edit2.text);
Edit3.text := FloatToStr(z1*z2);
end;A DecimalSeparator értéke határozza meg, hogy tizedespontot vagy tizedesvesszőt fogadjon el.
A hibakezelést majd ne felejtsd el hozzáadni (try ... except),procedure TFom_ini.Button2Click(Sender: TObject);
var z1,z2 : Real;
begin
DecimalSeparator := '.';
try
z1 := StrToFloat(Edit1.text);
z2 := StrToFloat(Edit2.text);
except
on E: Exception do { Hibakezelés }
end;
Edit3.text := FloatToStr(z1*z2);
end;vagy használd a Val funkciót.
procedure TFom_ini.Button2Click(Sender: TObject);
var z1,z2 : Real;
e : integer;
begin
DecimalSeparator := '.';
Val(Edit1.Text, z1, e);
if e > 0 then begin
{ Hibakezelés, pl. z1 := 1; vagy Exit; }
end;
Val(Edit1.Text, z2, e);
if e > 0 then begin
{ Hibakezelés, pl. z2 := 1; vagy Exit; }
end;
Edit3.text := FloatToStr(z1*z2);
end;[ Szerkesztve ]
-
TAZ155
csendes tag
sziasztok.
Nos mind a két variációt megnéztem.
-------------------------------------------------------------------------------------------------
procedure TFom_ini.Button2Click(Sender: TObject);
var
z1,z2 :Integer;begin
z1:=StrtoInt(Edit1.text);
z2:=StrtoInt(Edit2.text);
Edit3.text:=FloatToStr(z1*z2);end;
end.// igy hibaüzenetet kapok a delphi-től.
-------------------------------------------------------------------------------------------------
Ez igy önmagában münködik.
Edit3.Text := FloatToStr(126*0.039);De hogyan kell átalakitani, hogy Edit.text-esetében jó legyen.
Több megoldást kipróbáltam, de a hibaüzenet maradt.
A végén a z1 és z2 értéket szeretném összeszorozni.
Kipróbáltam ezt a megoldást is.
Edit3.Text := FloatToStr(ScrollBar1.Position*0.039);Majdnem megfelel nekem, és egyszerűbb.
De a 0,039-helyére nekem az Edit2.text-et kéne beirnom, a részadatod amit a végén beszorzom,
onnan venném.Edit3.Text := FloatToStr(ScrollBar1.Position*0.039); ebben az esetben hogyan hivatkozom az Edit2.text-re??
Scrollbar1 értékét (Edit1.text) szorzom Edit2.text értékével.
Az az---------------------------------------------------------------------------------------------
procedure TFom_ini.Button2Click(Sender: TObject);
begin
// Scrollbar értéke szor Edit2 = Edit3.textEdit3.Text := FloatToStr(ScrollBar1.Position*Edit2.text);
end;
-----------------------------------------------------------------------------------------------------
Helyesen hogyan kell hivatkozni Edit2.text-re ebben az esetben??Hali
Hozzáteszem nagyon kezdő vagyok a Delphi programozásban. De valahól el kell kezdeni!!??
-
TAZ155
csendes tag
oké.
köszi a válaszokat.
mind a két variációt, megnézem.
hali
Hozzáteszem nagyon kezdő vagyok a Delphi programozásban. De valahól el kell kezdeni!!??
-
leximester
tag
Sziasztok, Egy olyan szorgalmit kaptunk suliba, hogy delphiben kéne megírni az androidon ismert szókereső játékot. Ebben kérném segítségeteket, hogy hogyan is történhet ott, maga a 3*3-s játéktér elkészítése? Maga a szótár fájl kész van, illetve a gombokat is elhelyeztem. Én úgy csináltam hogy fixen kiválasztok a szótárból pl egy 3 betűs szót és utána ennek a szónak a betűihez választok további szavak, viszont így egy idő után tudni lehet hogy hol is vannak a szavak. Esetleg valakinek van jobb ötlete? Köszi.
-
zka67
őstag
[ Szerkesztve ]
-
TAZ155
csendes tag
Üdv.
A végén igy sikerült megoldanom.
-------------------------------------------------------------------------------------------------------------------
procedure TFom_ini.FormCreate(Sender: TObject);
Var
Z1 : Integer;
F: TIniFile;// Adatok beolvasása
begin
F:=TIniFile.Create(ExtractFilePath(Application.Exename) +'gm300.ini' );
With F do
begin
Edit2.Text:= ReadString('P_Config','Walue',Edit2.Text);
Edit4.Clear;
Edit4.Text:= ReadString('P_Config','Max',Edit4.Text);// a scroll max érték megadásaend;
// Scrollbar beállitásai
// vízszintes görgetősáv beállítása, ez alapértelmezésScrollBar1.Kind := sbHorizontal;
// a görgetősávok határainak beállítása
ScrollBar1.Min := 1;Z1:=StrtoInt(Edit4.text);
ScrollBar1.Max := Z1;// a csúszka helyzetének beállítása
ScrollBar1.Position := 1;
// a "soronkénti" lépésnagyság beállítása
ScrollBar1.SmallChange := 1;// az "oldalankénti" lépésnagyság beállítása
ScrollBar1.LargeChange := 10;// a szövegmesők csak olvashatók
Edit1.ReadOnly := true;// az ablak bal felső sarkának koordinátái
Left := 200;
Top := 100;end;
-----------------------------------------------------------------------------------------------------
A hibakezelést még odairom.
A következő kérdésem az lenne hogy hogyan tudok PL: összeszorozni egész számot, nem egész számmal??
133*0.66=??
milyen megoldások vannak, az ilyen probléma megoldására??
Hali
Hozzáteszem nagyon kezdő vagyok a Delphi programozásban. De valahól el kell kezdeni!!??
-
TAZ155
csendes tag
Sziasztok.
Abban szeretném a segitségeteket kérni , hogy hogyan lehet megadni a ScrollBar max értékét .
A max értéket Edit4.text-be lenne megadva.ScrollBar1.Max := 126 ;
De nekem ennek az értékét Edit4.text-ből kéne állitanom.
Mi a helyes megoldás??ScrollBar1.Max := Edit4.text ;
Sok megoldást kipróbálatam, de eggyik sem münködött.
Köszi.
Hali
Hozzáteszem nagyon kezdő vagyok a Delphi programozásban. De valahól el kell kezdeni!!??
-
D@ni88
addikt
Sziasztok.
Ismét lenne egy kérdésem
Van egy jó régi programunk, ami belépés megkezdésekor csatlakozik az adatbázishoz.
A BDE-t használó Tquery objektumok a belépéskor létrejött adatbázis kapcsolatot használják.Most gondolkozunk az ADO-ra való átálláson, de ha TADOQuery-hez tartozó connectionstring megadásával csatlakozok akkor az létrehoz egy teljesen új oracle sessiont.
Meg lehet oldani, hogy a connection string megadása nélkül használjam a TADOQuery objektumot?
Köszi
Dani -
oleslie
aktív tag
query1:=TADOQuery.Create(nil);
query1.Connection:=ADO_fromprovimax;
query1.Active:=false;
query1.ParamCheck:=false;
query1.SQL.Clear;
query1.SQL.Add('SELECT vevox.azonosito as vid, vevox.nev as vnev, vevojel.datum as vdatum FROM vevojel');
query1.SQL.Add('JOIN vevox ON vevox.azonosito=vevojel.azonosito');
query1.SQL.Add('WHERE vevox.thelyseg=":vhely" AND vevox.adoszam="" AND vevox.fizmod="Készpénz"');
query1.SQL.Add('ORDER BY vdatum desc');
with query1.Parameters.AddParameter do begin
DataType:=ftString;
Name:='vhely';
value:='Budapest';
end;a te módszereddel (1922) hibát ad, így működik. ne kérdezd miért
[ Szerkesztve ]
Egyszerű életet élek. Ami üres megtöltöm, ami tele van kiűritem
-
oleslie
aktív tag
bevallom, lustaságom 6ártalan. Én rádobtam a formra, és az object inspector-ban beálllítottam ami kellett.
D7 & ADO > VFP7 .dbf fájlokban túrok ígyarufindquery.Parameters.ParamByName('brmin').Value:=brmin;
arufindquery.Parameters.ParamByName('brmax').Value:=brmax;
arufindquery.Prepared:=true;
arufindquery.Open;arufindquery.SQL :
SELECT ar1.azonosito as aruid FROM ar1
JOIN arunet ON arunet.azonosito=ar1.azonosito
WHERE BETWEEN(ar1.eladb, :brmin, :brmax)Egyszerű életet élek. Ami üres megtöltöm, ami tele van kiűritem
-
oleslie
aktív tag
létezik az 'id' névvel hivatkozott paraméter?
CV from d7 help / tparameters / methods / addparameter
with ADOStoredProc1.AddParameter do begin
DataType := ftString;
..Direction := pdInput;
Value := 'malathion';
end;Egyszerű életet élek. Ami üres megtöltöm, ami tele van kiűritem
-
D@ni88
addikt
Kérlek segítsetek, hogy az alábbi kódban hol a hiba:
selQuery:=TADOQuery.Create(nil);
selQuery.ConnectionString:=connection;
try
{---assemble SQL statement}
selQuery.SQL.add('SELECT ID, CUSTOMER_SESSION_ID, IMAGE_NAME, IMAGE_DATA, IMAGE_COMMENT, ENABLED,'
+ ' CREATE_DATE, CREATE_USER_ID, MODIFICATION_DATE, MODIFICATION_USER_ID'
+ ' FROM IMAGES)
+ ' WHERE ID = :id');
selQuery.ParamCheck:=False;
selQuery.Parameters.ParamByName('id').Value:= 1;
selQuery.ExecSQL;Parameters sornál száll el....
Parameter 'id' not found; -
oleslie
aktív tag
azért tudom még fokozni
function bin2dec(bin : string) : longint;
asm
push eax
push ebx
xor ebx,ebx
@loop0:
rol ebx,1
cmp byte ptr [eax],$31
jnz @zerobit
or ebx,1
@zerobit:
inc(eax)
cmp byte ptr [eax],0
jnz @loop0
mov result,ebx
pop ebx
pop eax
end;
ez is helyes (bár ez nézőpont kérdése) eredményt ad (0x42)[ Szerkesztve ]
Egyszerű életet élek. Ami üres megtöltöm, ami tele van kiűritem
-
D@ni88
addikt
Sziasztok.
Képet szeretnék menteni oracle-be blob típusba
insertQuery.ParamByName('image_data').LoadFromStream(FImageStream, ftBlob);Ez lefut, de magánál a végrehajtásnál:
ORA-01460 unimplemented or unreasonable conversion requestedBDE 4.0 verzióját használjuk.
Ha az SQLORA32.dll-ről SQLORA8.dll-re váltunk megoldódik a probléma, de jelentősen lassul az alkalmazás.
Köszi
-
zka67
őstag
válasz boros.denes #1913 üzenetére
function BinToInt(Value: string) : integer;
var i : integer;
begin
Result := 0;
for i := 1 to Length(Value) do
case Value[i] of
'0': Result := Result shl 1;
'1': Result := (Result shl 1) or 1;
else
Break;
end;
end; -
oleslie
aktív tag
válasz boros.denes #1913 üzenetére
var b:longint
b:=0;
for i:=1 to length(bin) do
if (bin[length(bin)-(i-1)]='1') then
b:=b or (1 shl (i-1));[ Szerkesztve ]
Egyszerű életet élek. Ami üres megtöltöm, ami tele van kiűritem
-
oleslie
aktív tag
válasz boros.denes #1913 üzenetére
csak tippelek, de itt egy rövid idézet a d7 helpjéből :
Delphi syntax:
procedure Dec(var X[ ; N: Longint]);
Description
In Delphi code, Dec subtracts one or N from a variable.kezdetnek átnevezném a 'dec' nevü változót
aztán ..
bin vs bin(i), char típussal mit akarsz szorozni? chr(49) = '1' , valamit megszorzol 49-el?[ Szerkesztve ]
Egyszerű életet élek. Ami üres megtöltöm, ami tele van kiűritem
-
boros.denes
csendes tag
Sziasztok!
Az alábbi programrészletben kéne segítség, amely nem indul el, hibaüzenetet ír:procedure p_BINtoDEC(bin:string;var dec:integer);
var i,x:integer;
begin
dec:=0;
for i:=1 to length(bin) do
begin
x:=length(bin)-i;
»»if bin[i]='1' then dec:=dec+exp(x*ln(2))*bin(i);
end;
end;A jelölt sorra ír egy hibát, az alábbi szöveggel:
Operator not applicable to this operand type.
Valaki tudna valami megoldást? Köszönöm előre is[ Szerkesztve ]
Üdv: boros.denes
-
zka67
őstag
A DateUtils unitban vannak a dátum/idő rutinok. Ebben megtalálod a többek között a következőket is:
function IncYear(const AValue: TDateTime; const ANumberOfYears: Integer = 1): TDateTime;
// function IncMonth is in SysUtils
function IncWeek(const AValue: TDateTime; const ANumberOfWeeks: Integer = 1): TDateTime;
function IncDay(const AValue: TDateTime; const ANumberOfDays: Integer = 1): TDateTime;
function IncHour(const AValue: TDateTime; const ANumberOfHours: Int64 = 1): TDateTime;
function IncMinute(const AValue: TDateTime; const ANumberOfMinutes: Int64 = 1): TDateTime;
function IncSecond(const AValue: TDateTime; const ANumberOfSeconds: Int64 = 1): TDateTime;
function IncMilliSecond(const AValue: TDateTime; const ANumberOfMilliSeconds: Int64 = 1): TDateTime;pl. ha egy perccel többet szeretnél a jelenlegi időnél, akkor
Label1.Caption := DateTimeToStr( IncMinute(Now, 1) );
-
D@ni88
addikt
Sziasztok.
Delphiben hogyan lehet DateTime típusú változóhoz pl 1 percet hozzáadni?
Köszi Dani
-
Jeti1
tag
Ha egy Delphiben írodott program indításkor, amikor egy adatbázishoz csatlakozna a "Drive not know to system" hibát generálja, mi lehet a gond? Találkozott már valaki ilyen hibajelenséggel?
Ne várjunk a nevetéssel, amíg boldogok leszünk. Különben félő: meghalunk anélkül, hogy nevettünk volna. /La Bruyére/
-
Tanisz
senior tag
Vagy épp ADO komponenst, én gyakran azt használtam és nem volt vele gond soha sem.
http://projekt.azigazikincs.hu/ ''Homo loquax nonnumquam sapiens''; "Nam et si ambulavero in valle umbrae mortis, non timebo mala, quoniam tu mecum es. Virga tua et baculus tuus, ipsa me consolata sunt. "
-
Tanisz
senior tag
válasz sanzi89 #1906 üzenetére
Paradox régen volt, mintha igaz se lett volna, de hátha nem mondok akkora marhaságot:
de BDE nem lenne jobb erre?
DataModul-t használsz?http://projekt.azigazikincs.hu/ ''Homo loquax nonnumquam sapiens''; "Nam et si ambulavero in valle umbrae mortis, non timebo mala, quoniam tu mecum es. Virga tua et baculus tuus, ipsa me consolata sunt. "
-
sanzi89
addikt
Újabb gondom akadt. Volna egy .db kiterjesztésű, elvileg Pradox 5-ös adatbázisom, amihez szeretnék hozzáférni. Az adatbázis nem tartalmaz jelszót, azonban a Delphi mindig feladja a kis ablakját Query indításkor, hogy felhasználónév, jelszó. Ha nem írok be semmit, csak leokézom, akkor a következő hibaüzenetet kapom:
Operation must be performed on the current session
Hogyan tudnám megkerülni, hogy ne kérjen jelszót, ha egyszer nincs. Lokális XP-n ODBC-n fut az adatbázis.
"Mindent azért kell tudni mert kérdezik, nem azért mert hasznos."
-
sanzi89
addikt
válasz sanzi89 #1904 üzenetére
Végül az lett a megoldás, hogy előre létrehozott Image komponens Height és Width értékeit állítottam úgy, ahogy nekem tetszik. Plusz ugye a Form méretét is ehhez mérten állítottam be. Kicsit szöszmötölős, de végül sikerült.
"Mindent azért kell tudni mert kérdezik, nem azért mert hasznos."
-
zka67
őstag
válasz sanzi89 #1901 üzenetére
1. a public részben csinálj egy Image : TImage; változót.
2. a form létrehozásakor (FormCreate) hozd létre az Image-t, a Name tulajdonságot ne bántsd.
3. az Image paramétereiben hiányzik az OnClick, ezt add hozzá:
Image.OnClick := KepClick;Ha a form tulajdonságaiban a BorderStyle-t bsNone-ra állítod, kereted sem lesz,.
A JPG1-re nincs szükséged, sem az Image Width és Height beállításokra, mivel a LoadFromFile be fogja állítani ezeket. Ha a Stretch-et true-ra állítod, akkor kinyújtja a teljes képernyőre a képet. -
sanzi89
addikt
válasz sanzi89 #1901 üzenetére
Plusz a másik gondom, hogy minden egyes Form nyitáskor létrehozza a TImage-et, így ha újra megnyitom a Formot hibát dob, mert már létezik Kep nevű komponens. Az volna az ötletem, hogy a FormClose-ba beleteszem az objektum törlését, de mivel nem tudok rá hivatkozni (Kep.Free; nem jó), nem tudok vele mit csinálni.
"Mindent azért kell tudni mert kérdezik, nem azért mert hasznos."
-
sanzi89
addikt
válasz sanzi89 #1900 üzenetére
Akkor leírnám mire jutottam. Van egy Form-om, legyen neve Form2. Az alábbi beállítások érvényesek:
WindowsState = wsMaximized
AutoScroll = FalseVan egy ScrollBoxom, legyen a neve ScrollBox1. Az alábbi beállítások érvényesek:
Align = alClient
AutoScroll = TrueÉs akkor a forráskód:
unit elsokep;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, JPEG;
type
TForm2 = class(TForm)
ScrollBox1: TScrollBox;
procedure FormShow(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form2: TForm2;
implementation
uses anla;
{$R *.dfm}
procedure TForm2.FormShow(Sender: TObject);
var
JPG1: TJPEGImage;
begin
//Formot a bal felso sarokba allitom
Form2.Top:=0;
Form2.Left:=0;
//Meghatarozzuk a megjelenitendo kep meretet
JPG1:=TJPEGImage.Create;
JPG1.LoadFromFile('c:\01.jpg');
//Letrehozzuk a megjelenitendo kep komponenset a jo beallitasokkal
with TImage.Create(self) do begin
Name:='Kep';
Parent := ScrollBox1;
Autosize:=True;
Top := 0;
Left := 0;
Width := JPG1.Width;
Height := JPG1.Height;
Picture.LoadFromFile('c:\01.jpg');
end;
end;
end.Ez annyit tud, hogy új formon megjeleníti scrollboxban a képet eredeti felbontásban. Erre kellene egy OnClick, hogy milyen változás legyen, ha kattintok. Ezt is megcsináltam, de nem jó:
procedure TForm2.KepClick(Sender: TObject);
begin
ShowMessage('OK');
end;Azt írja, hogy a Kep nem található, pedig ilyen néven hoztam létre... Ötletek?
"Mindent azért kell tudni mert kérdezik, nem azért mert hasznos."
Új hozzászólás Aktív témák
- Fehér Villám új GAMER PC 2év garancia / NVIDIA GTX1660Super / Ryzen5 / 16GB DDR4 /
- ASUS ROG Zephyrus G14 -14" WUXGA IPS 144Hz -Ryzen 7 6800HS - 16GB - 512GB - RX 6700S 8GB - 1 év gari
- HP Elitebook x360 G6 2in1 Prémium laptop 14" FULL HD IPS Érintőkijelző / Intel I7 / 16GB RAM
- HP Elitebook x360 G7 2in1 Prémium laptop 14" FULL HD IPS Érintőkijelző / Intel I7 / 16GB RAM
- ! 2 év gyártói garancia ! AULA F87 PRO Vezeték Nélküli Mechanikus Gamer Billentyűzet
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest