Hirdetés
Új hozzászólás Aktív témák
-
Prego
senior tag
Dinamikus tömböt szeretnék átadni:
procedure TForm1.Tombfeltolt;
var i,Tombhossz:integer;
begin
Randomize;
Memo1.Lines.Clear;
Tombhossz := Random(100);
Memo1.Lines.Add(IntToStr(Tombhossz)+' számú elemű tömb létrehozva');
SetLength(T,Tombhossz);
for I := low(t) to high(t) do
begin
T[i] := Random(1000);
MEmo1.Lines.Add(IntToStr(T[i]));
end;
MEmo1.Lines.Add(IntToStr(i)+' elem feltöltve');
end;procedure TForm1.Button2Click(Sender: TObject);
var Tomb:Array of Integer;
begin
Tombfeltolt(Tomb);
end;SetLength-nél kiírja fordításnál hogy Incompatible types. Ez csak egy példaprogi, az eredetiben a Tombfeltölt egy másik Unitban van, tehát nem tudom megadni globális változóként.
Aki másnak vermet ás az a Stack Pointer
-
VaniliásRönk
nagyúr
Kicsit halott a topik. IP kamerát szeretnék kezelni Delphi 7-ben, de nem igazán találok ilyesmit prog.hu-n és google-lel sem, tud valaki segíteni?
"Only two things are infinite, the universe and human stupidity, and I'm not sure about the former." (Albert Einstein)
-
^^|CC|^^
tag
csáóóó
Nekem olyan típusú problémám lenne, hogy ugye meg van az, hogy beírok egy edit mezőbe egy számot és ki hozza showmessage-ben a bináris kódját...
Igen ez nem volt olyan nehéz...A problémám ott kezdődik mikor azt kéne megcsinálnom, hogy négyesével legyen tagolva és ha ez nem tudna teljesülni( mivel kisebb szám jött ki) akkor azt meg fel kellene töltenie 0-kal....
pl.: (általam kitalált számok általam kitalált eredményekkel...)
231= 11001011001110110
nah itt van kevesebb, mint 4... és ilyenkor kéne feltöltenie 0-kal: 1 1001 0110 0111 0110
0001 1001 0110 0111 0110 ----> ez a végleges formátuma
annyit biztosan tudok, hogy vagy elöltesztelős ciklussal vagy pedig hátul tesztelős ciklussal kell megcsinálni... de még annyira kezdő vagyok, hogy nem igen akar összejönni nekem...
nagyon szépen köszönöm a segítségeket...
[ Szerkesztve ]
Thug... The Hate U Gave Little Infants Fucks Everybody... //by.: Tupac Amaru Shakur//
-
Gyuri16
senior tag
válasz ^^|CC|^^ #1753 üzenetére
var
str, nullak: String;
mennyi: integer;
begin
str:='10010001000';
nullak:='0000';
mennyi:=(4-(length(str) mod 4)) mod 4;
str:=copy(nullak,1,mennyi)+str;
end;egyanaz egyszerubben:
var
str, nullak: String;
i: integer;
begin
str:='10010001000';
nullak:='';
for i:=1 to 4-length(str) mod 4 do
nullak:=nullak+'0';
if length(nullak)=4 then
nullak:='';
str:=nullak+str;
memo1.Lines.Add(str);
end;Nem vagyok egoista, csak uborkagyalu!
-
^^|CC|^^
tag
válasz Gyuri16 #1758 üzenetére
nah megcsináltam eddig nekem így néz ki:
var a,i: integer;
s,nullak: string;
m: byte;
begin
try
a:=strtoint(edit2.text);
if a<0 then raise exception.create('Ne legyen negatív!');
if a=0 then s:='0'
else begin
s:='';
while a>0 do begin
m:= a mod 2;
s:=inttostr(m)+s;
a:=a div 2
end;
nullak:='';
for i:=1 to 4-length(s) mod 4 do
nullak:=nullak+'0';
if length(nullak)=4 then
nullak:='';
s:=nullak+s;
end;
showmessage('Számocska:'+#13+#13+s);
except
showmessage('Hiba!!!');
end;
end;a félkövér amit javasoltál... most legalább már tölti őket 0-kal, de még mindig nem tagolja fel 4sével...
[ Szerkesztve ]
Thug... The Hate U Gave Little Infants Fucks Everybody... //by.: Tupac Amaru Shakur//
-
Gyuri16
senior tag
válasz ^^|CC|^^ #1759 üzenetére
ezt most probald elkezdeni te
nullazol egy uj stringet, amibe, majd megkapod a vegen a tagolt szamsort
kell egy ciklus ami megy vegig az eredeti stringeden, negy darabot atdob az uj stringbe, majd odarak egy ' '-t azutan megint negyet odatesz es igy tovabbNem vagyok egoista, csak uborkagyalu!
-
^^|CC|^^
tag
válasz Gyuri16 #1760 üzenetére
nem igen kívánkozik létre jönni a dolog...
az új stringet már felvettem és nulláztam is..
annyit tudok vagy legalábbis gondolom, hogy for ciklus lesz... de hogy azt hogy csinálom meg, hogy 4-et átdob azt már nem tudom...[ Szerkesztve ]
Thug... The Hate U Gave Little Infants Fucks Everybody... //by.: Tupac Amaru Shakur//
-
Gyuri16
senior tag
válasz ^^|CC|^^ #1762 üzenetére
ok, lehet egyesevel is atdobalni. fogod az eredeti szamokat, es egyesevel elkezded atdobalni a masikba, ha a ciklusvaltozo 4-gyel oszthato (tehat egy negyes csoport vegere ertel) akkor beszursz egy ' '-t
ezt most kiprobalas nelkul irom, csak hogy lasd hogyan gondolom:str - mostani string
str2 - uj string, ebben lesz az eredmeny
for i:=1 to length(str) do
begin
str2:=str2+str[i];
if i mod 4 = 0 then str2:=str2+' ';
end;ezzel van annyi gond meg, hogy a string legvegere is tesz egy ' '-t, de ezt mar ki tudod szurni egyszeruen.
Nem vagyok egoista, csak uborkagyalu!
-
VaniliásRönk
nagyúr
Delphi segítség kéne hirtelen, de most tényleg kéne. Videóból (MPEG2) kéne rendszeres időközönként képet lopni. Keresgéltem, és a freeware komponensek között egyedül a DSPacket találtam, ami megfelel, de elég szegényes a dokumentációja, a példaprogram sem működőképes, úgyhogy keresgéltem tovább, de nem igazán találtam mást.
Aztán próbálkoztam Windows Media Player és VLC ActiveX vezérlővel, ezekkel le tudom játszani a file-okat, de nem tudok rájönni, hogy hogyan lehetne velük képet lopni, ha lehetséges egyáltalán. Egész nap túrtam a Google-t, de nem esik túl sok szó egyikről sem. (a VLC wikit el sem érem)
Valakinek van valami ötlete, hogy hogyan tudnám megoldani a problémát? Köszönöm."Only two things are infinite, the universe and human stupidity, and I'm not sure about the former." (Albert Einstein)
-
VaniliásRönk
nagyúr
válasz VaniliásRönk #1768 üzenetére
VLC-vel elvileg lehet, gyakorlatilag nem találok semmilyen használható kódot, a GetVariable-SetVariable mókázást már letiltották, merthogy veszélyes.
"Only two things are infinite, the universe and human stupidity, and I'm not sure about the former." (Albert Einstein)
-
^^|CC|^^
tag
Csáóóó!
Most az lenne a problémám, hogy delphiben kéne véletlen neveket létrehoznom...
A kritériumok azok lennének, hogy random hosszúságúak (1 szótagtól 5 szótagig és 1 szótag az egy msh és egy mgh kell, hogy legyen...)
Sajnos nem vagyok túl jártas a programozásban és kéne a segítség...
Nagyon szépen köszönöm a segítségeket...üdv.:
^^|CC|^^Thug... The Hate U Gave Little Infants Fucks Everybody... //by.: Tupac Amaru Shakur//
-
Monika19
csendes tag
Hali!
Nagyon sűrgös lenne a segítség...frown.gifDelphiben kellene valami ilyesmit programozni:
Hozz létre Elsőfokú tag, Másodfokú tag és szabadtag Edit mezővel.
Szintén Edit mezővel megoldások számát.
if-el kellene ezt felírni..
- ha 0 > d akkor nincs megoldás
-ha 0 < d akkor több megoldás van
-ha 0=d akkor 1 megoldás van
ezt kiíratni megoldások száma edit mezőben.
d=a*a-4*b*b-diszkrimináns edit mezőben kiíratni a d-t.)
Kérem segítsetek!
Holnapra kell.... confused.gif -
Gyuri16
senior tag
válasz Monika19 #1772 üzenetére
es hol akadtal el?
gondolom masodfoku egyenlet megoldasarol van szo
csinalsz par editet (adatoknak, es eredmenyekre) es egy gombot
gombra teszel olyan akciot, hogy beolvasod az adatokat editekbol, kiszamolod a diszkriminanst, ebbol megallapitod a megoldasok szamat, amit kiirsz, szintugy a diszkriminanst egy masik editbe
stringet szamma tudsz alakitani StrToFloat fuggvennyel (es valos szamokon mukodik), visszafele FloatToStrja es a diszkriminans erteke b^2-4ac
Nem vagyok egoista, csak uborkagyalu!
-
Csakénvagyok
őstag
válasz VaniliásRönk #1768 üzenetére
Freeben én sem tudom, TVideoGrabber mindezeket tudja. Csakhogy fizetős
-
Gyuri16
senior tag
válasz Monika19 #1775 üzenetére
ha van egy edited pl Edit, akkor egy valtozoba igy tudod atmasolni (ha szam):
a:=StrToFloat(Edit.text);
ezek utan ha mindent beolvastal, kiszamolod a d-t, aztan jon a rettegett if, kb igy:if d<0 then
eredmenyEdit.Text:='0'
else if d=0 then
eredmenyEdit.Text:='1'
else if d>0 then
eredmenyEdit.Text:='2';ez kiirja az megoldasok szamat az eredmenyEdit editbe
ezutan siman kiirod a d-t:EdDiszkriminans.Text:=FloatToStr(d);
Nem vagyok egoista, csak uborkagyalu!
-
-
Gyuri16
senior tag
válasz Monika19 #1777 üzenetére
hat en nem az editek onclickjebe tennem, mert az akkor hajtodik vegre ha ranyomsz az editre, szerintem ugy csinald, hogy eloszor kitoltod az adatokat, es ha a gombra nyomsz akkor olvasol be mindent, az osszes editbol. tehat button.onclick
Val-t ugy kell hasznalni ahogy irtad, viszont jobb lenne ha a StrToFloat es FloatToStr-t hasznalnad ahogy irtam (pl azert mert az utobbi tudja, hogy milyen jel a tizedesvesszo - valahol pont, valahol vesszo ez fugg attol, hogy az operacios rendszerben mi van beallitva)Nem vagyok egoista, csak uborkagyalu!
-
joergie
őstag
Sziasztok! Szeretnék megoldani egy olyan dolgot, hogy van egy *.asp oldal, amiben van sok(max 100 mondjuk) azonos kezdetű (pl: http://honlap.com/akármi.asp?ID=4jegyűszám) hibatkozás. Ezekben az oldalakban vannak paraméterek. nagyjából 13 ilyen-olyan, de lehet több is.
Milyen programnyelven oldható meg, hogy ezen paramétereket(100*13) lehívja, és ezek értéke szerint tudjak szortírozni(pl egyik legyen több 100nál, másik legyen kevesebb 20nál).
mysql-ra gondoltam, vagy delphi-re, előzőt tanultam régebben, de már fingom sincs, másikba még bele se szagoltamEgy bizonyos szint fölött nem süllyedünk egy bizonyos szint alá.
-
cellpeti
veterán
Szevasztok!
Kezdő vagyok és szeretném elkezdeni a Delphi-t. Milyen könyveket ajánlotok hozzá?
Baga Edit?
Tigris, tigris, csóvafény...
-
mia91
csendes tag
Hali. léccyke segitsetek.wan 1kis gondunk delphiwel mit jelent es mire hasznaljuka delphiben az enabled es a setfocus????koxike.puxika
-
Gyuri16
senior tag
te jo eg.. remelem a programokat nem ilyen stilusban irod..
enabled azt jelenti, hogy az adott control hasznalata engedelyezve van e. tehat pl gombnal ha nem enabled akkor szurke, es nem lehet menyomni, ha enabled akkor mukodik rendesen
setfocus aktivva tesz egy controlt. pl egy szoveges mezonel (TEdit, TMemo) odaugrik a kurzor, es rogton irhatsz bele.Nem vagyok egoista, csak uborkagyalu!
-
asimov007
csendes tag
Sziasztok!
Nagyon gyenge vagyok delhpiböl!
El kéne egy kis segítség!!!!Miért száll el azonnal ez a gyengécske program?
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids;
type
TForm1 = class(TForm)
StringGrid1: TStringGrid;
procedure StringGrid1SelectCell(Sender: TObject; ACol, ARow: Integer;
var CanSelect: Boolean);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
Type mat= array [1..10,1..10] of integer;
function kiert(mat: mat;xpos: integer;ypos: integer;jatekos:char):integer; stdcall; external 'Projekt1.dll';
implementation
{$R *.dfm}
procedure TForm1.StringGrid1SelectCell(Sender: TObject; ACol,
ARow: Integer; var CanSelect: Boolean);
var mat1:mat;
vertek:integer;
jatekos:char;
i:integer;
j:integer;
b:boolean;
begin
jatekos:= 'g';
vertek:= 2;
while vertek <> 0 do
begin
if jatekos = 'g' then
jatekos:= 'j'
else
jatekos:= 'g';
StringGrid1SelectCell(Sender,acol, arow,b);
begin
if jatekos = 'g' then
StringGrid1.Cells[Acol,Arow]:='O'
else
StringGrid1.Cells[Acol,Arow]:='X';
end;
end;
end; // while
end. -
Gyuri16
senior tag
válasz asimov007 #1783 üzenetére
ha a stack overflowra gondolsz, akkor az azert van, mert rekurzivan meghivod a selectcell fuggvenyedet, es igy vegtelen ciklusba kerul. azon kivul a while ciklusod is vegtelen, mert a vertek valtozot nem valtoztatod meg a ciklusban.
legkozelebb legyszives hasznald a programkod gombot, nagyobb esellyel kapsz segitseget ha nem kell kinlodni a koddal hogy olvashato legyen. tovabba ha leirod milyen hibat dob, az szinten gyorsitja a valaszt.
Nem vagyok egoista, csak uborkagyalu!
-
asimov007
csendes tag
válasz Gyuri16 #1784 üzenetére
Kedves Gyuri 16!
Tudom,egy kissé pofátlan a kérés,de kb 1 hete használom a delphit.
Hogyan tudnám ciklusba rakni a Select -et és a rekurzivitást elkerülni!
Tényleg nagyon idegen nekem még program!
Ha szemtelennek tartasz,bátran mondd meg!!
És köszi a gyors választ
Légyszi irdd meg ,egyáltalán zavarhatlak-e hülye kédésekkel? -
Gyuri16
senior tag
válasz asimov007 #1786 üzenetére
nem nagyon neztem mit csinal a programod.. gondolom otodolo akar lenni, ugye? jelen formajaban a programod eleg kusza, nem igazan ertem mit miert csinal. miert akarod a selectet ciklusba rakni, minek oda egyaltalan ciklus. ird le szavakkal, hogy mit is akarsz konkretan
olyat hogy egy stringgridben kattintasokra mukodjon a X es O jeloles felvaltva megirhatok, aztan viszont meg kell tesztelni, hogy osszejott-e egymas mellett az 5 egyforma. tovabba ha szamitogepes ellenfelet akarsz azt is meg kell irni.
ez meg nem szemtelenseg
azt jol sejted, hogy a programozos topicokban nem nagyon szeretjuk azt, ha valaki kesz programot ker, es aztan par nap mulva jon a kovetkezoert. kerdeseket nyugodtan irhatsz forumba, arra van.Nem vagyok egoista, csak uborkagyalu!
-
Gyuri16
senior tag
válasz Gyuri16 #1787 üzenetére
itt egy egyszeru klikkelgetos megoldas:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids;
type
TForm1 = class(TForm)
StringGrid1: TStringGrid;
procedure StringGrid1SelectCell(Sender: TObject; ACol, ARow: Integer;
var CanSelect: Boolean);
procedure FormCreate(Sender: TObject);
private
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
var
jatekos:char;
procedure TForm1.StringGrid1SelectCell(Sender: TObject; ACol,
ARow: Integer; var CanSelect: Boolean);
begin
if StringGrid1.Cells[ACol, ARow] <> '' then
exit; // ha mar van ott valami nem irjuk felul
StringGrid1.Cells[ACol, ARow]:=jatekos;
if jatekos='X' then
jatekos:='O'
else
jatekos:='X';
{
ide johet a kiertekeles, dll meghivasa stb
}
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
jatekos:='X';
end;
end.(a formcreate ertelemszeruen a formnak az oncreate esemenye)
Nem vagyok egoista, csak uborkagyalu!
-
asimov007
csendes tag
Kedves forumozok!
a következő oproblémám adódott!
Ir ni kell c++-ban egy dll-t amit delphiben kell meghivni!
Gyuri16 kedves segítségével a delphi rendben vanmde valamiért a dll-nek nem tudom korrektül átadni a mat1 charaktertömböt!
Mivel mind a c++,mind a delphi tudásom minimális,hozzátok fordulok segítségért!!!Nagyon szépen köszönöm!
mind a két program szintaktikailag helyes?(Lefordul),a tdump mutatja is a kiért entry pointot,de delhiből való hiváskor,a c++ nem ad vissza korrekt értékekeket.
HA a delphiben kimommentezem a dll hivást,a kattingatás tökéletes(Köszönöm gyuri16)
A megadott direkt paraméterekkel is mindig 'O' jön vissza!Köszönöm!!!!
ez a c++
#ifndef _DLL_H_
#define _DLL_H_
#if BUILDING_DLL
#define DLLIMPORT __declspec (dllexport)
#define DllExport extern __declspec(dllexport)
#else /* Not BUILDING_DLL */
#endif /* Not BUILDING_DLL */
#endif
#include <stdio.h>
#include <string.h>
int sor( int mat1,int a, int b);
char mat1[10][10];
extern "C"
{
DllExport char kiert(char mat[10][10],int acol, int arow,char jatekos)
{
char c[10]=
{'1','2','3','4','5','6','7','8','9'};
return c[acol];
// return mat[1][1];
}
class DLLIMPORT DllClass
{
public:
DllClass();
virtual ~DllClass(void);
private:
};ez a dlphi kod!
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids;
type
TForm1 = class(TForm)
StringGrid1: TStringGrid;
procedure StringGrid1SelectCell(Sender: TObject; ACol, ARow: Integer;var CanSelect: Boolean);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
jatekos:char;
i:integer;
j:integer;
Form1: TForm1;
Type mat= array [1..10,1..10] of char;
function kiert(mat: mat;acol: integer;arow: integer;jatekos:char):char; stdcall; external 'Projekt1.dll';
implementation
{$R *.dfm}
procedure TForm1.StringGrid1SelectCell(Sender: TObject; ACol,ARow: Integer; var CanSelect: Boolean);
var
mat1:mat;
begin
if StringGrid1.Cells[ACol, ARow] <> '' then
exit
else
StringGrid1.Cells[ACol, ARow]:=jatekos;
if jatekos='O' then
jatekos:='X'
else
jatekos:='O';
// mat1[Acol,Arow]:= jatekos;
mat1[1,1]:= jatekos;
//Showmessage( kiert(mat1,1,1,jatekos));
//Showmessage( kiert(mat1,acol,arow,jatekos));
end;
procedure TForm1.FormCreate(Sender: TObject);
var
i:integer;
j:integer;
begin
jatekos:='X';
for i:=1 to 10 do
for j:=1 to 10 do
StringGrid1.Cells[i,j]:= '';
end;
end.[ Szerkesztve ]
-
Gyuri16
senior tag
válasz asimov007 #1790 üzenetére
megyek el itthonrol, egyelore csak ennyi:
delphis tombod 1tol kezdodik, mig c-ben ugye 0tol, erre oda kell figyelni
a StringGrid1SelectCellben a mat1[1,1]:= jatekos; sor a jatekos valtozo csereje utan van, tehat az elso meghivaskor 'O' lesz bennemajd kesobb megnezem jobban
Nem vagyok egoista, csak uborkagyalu!
-
S-eye
senior tag
Hello!Megtudja nekem mondani valaki,hogy a Delphiben hogyan lehetne áramkört rajzolni?Milyen parancsokat kell használni,vagy valami forrást erről?
-
Gyuri16
senior tag
Delphi egy programozasi nyelv. lehet benne olyan programot irni, amiben aramkort lehet tervezni, de az eleg nagy munka. magatol nem tud ilyet.
ha valamilyen konkret aramkortervezo programrol van kerdesed arra hamarabb kapsz valaszt egy elektros topicban, pl itt: [link]
Nem vagyok egoista, csak uborkagyalu!
-
Gergosz2
veterán
Valaki segítsen!
Kéne egy olyan delphi ami megy Vista 64-bit alatt!
pls help!
Nokia 6030 Hardcore User // I Panic Restaurant by Taito
-
LeoZso
csendes tag
Sziasztok!
Nekem egy nem túl bonyolult, de számomra mégis ismeretlen problémám lenne.
A helyzet, hogy képet (BMP) szeretnék eltárolni egy Paradox7 táblába. Ott van is egy mezőtípus, Graphic ami elviekbe erre szolgálna. (létrehozatm a táblát)
Van is egy Form-om, amin meg lehet jeleníteni a szgépen lévő BMP képeket egy Image-be.
Kérdés, hogy ezt a képet (Image1.picture) hogyan tudom, milyen utasítással belerakni a táblába??? Milyen beállítások kellenek hozzá??
Mert ugye egyszereűen egy Edit-ből így is bele rakhatnánk a tartalmát:Table1.FieldByName('Név').asstring:=E2.text; (például)
Kép esetén mit kell használni, ill. van-e valami PLUSSZ dolog amit még be kell állítani?
Remélem érthetően írtam le a problémát! Válaszotokat előre is köszönöm!!!!!!!!
-
_AnTi_
tag
Sziasztok!
Gergosz2: a turbo delphi bármely verziója megy tudomáson szerint vista/win7 64-en, illetve azt hiszem a 2006-os delphitől kezdve minden változat megy. Turbo Delphi bizonyos verziója ingyenes, a többiből lehet trial-t letölteni itt érdemes keresgélni.
LeoZso: ezt olvasd át
S-eye: ahogyan Gyuri16 is már írta neked a delphi az egy szoftverfejlesztő környezet. Ezzel nem tudsz nyákot rajzolni, "csak" egy olyan programot írni, amit később erre lehet használni, ami nem olyan egyszerű és ha mindenképpen delphiben kell megoldanod meg kell hozzá tanulnod delphiben programozni. Vannak erre célszoftverek.
Remélem még segíthettem valakinek, mert látom elég régi dolgokra írtam.
Szép vagyok és okos, ügyes és aranyos...
-
-
csewe
csendes tag
sziasztok
hogy tudnék átmásolni egy pf32bit képet pf24bit be
PL. image1 pf32bit-es ennek egy részletét másolnám image2 pf24bit-be
nem tudom , hogy ha scanline-al vagy pixels-el kiolvason az egyiket és beirom a másikba az lehetséges e.
megpróbáltam egyszerűen image2 := imaqge1 ; de üres képet kaptaqm image2 .-- ben.