- Karácsonyfaként világíthat a Thermaltake új CPU-hűtője
- Az USA vizsgálja a RISC-V kínai terjedésének kockázatát
- Kicsit extrémre sikerült a Hyte belépője a készre szerelt vízhűtések világába
- Egészen nagy teljesítményspektrumon fedné le a mobil piacot az AMD
- Kihívás a középkategóriában: teszten a Radeon RX 7600 XT
- Egészen nagy teljesítményspektrumon fedné le a mobil piacot az AMD
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Autós kamerák
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- Gaming notebook topik
- Milyen videókártyát?
- Házimozi haladó szinten
- Milyen TV-t vegyek?
- VR topik (Oculus Rift, stb.)
- Apple notebookok
Hirdetés
-
Az USA vizsgálja a RISC-V kínai terjedésének kockázatát
ph A Kereskedelmi Minisztérium egyelőre csak felméri a helyzetet, egyelőre nem látni, hogy tudnak-e bármit is tenni.
-
Súlyos adatvédelmi botrányba kerülhet a ChatGPT az EU-ban
it Egyre nagyobb probléma az AI hallucinálása – most az osztrák adatvédelmi hatóság veheti elő a ChatGPT miatt az OpenAI-t, alapvetően a GDPR megsértése miatt.
-
Dragon Ball: Sparking! Zero - Mester és tanítvány
gp Egyelőre még mindig nem kaptunk megjelenési dátumot a játékhoz.
Új hozzászólás Aktív témák
-
killerjohn
addikt
Uram Isten !
(Form1.FindComponent('image'+IntToStr(N)) as TImage).valami := valami;
enyi.
[Szerkesztve] -
killerjohn
addikt
Ez nem fog menni, mivel ciklusváltozó nem lehet, csak lokális...
Így már jobb :
Var Tomb : array [0..3] of String = ('Edit1','Edit2','Edit3','Edit4');
Procedure TForm1.Button1Click(Sender: TObject);
Var i1 : Integer;
Begin
For i1 := 0 To 3 Do
Begin
(FindComponent(Tomb[i1]) as TEdit).Text := 'Akármi';
End;
End;
[Szerkesztve] -
killerjohn
addikt
VCL :
TForm
property Components[Index: Integer]: TComponent read GetComponent;
function TComponent.GetComponent(AIndex: Integer): TComponent;
begin
if FComponents = nil then TList.Error(@SListIndexError, AIndex);
Result := FComponents[AIndex];
end;
function TComponent.FindComponent(const AName: string): TComponent;
var
I: Integer;
begin
if (AName <> '') and (FComponents <> nil) then
for I := 0 to FComponents.Count - 1 do
begin
Result := FComponents;
if SameText(Result.FName, AName) then Exit;
end;
Result := nil;
end;
a függvényhíváson belül már a saját, közvetlen elérésű adattagjával dolgozik az osztály, és nem a GetComponent függvényen keresztül ad vissza értéket, amikor a Components[] tömb elemeit olvasod....
Tehát még gyorsabb is. -
-
killerjohn
addikt
válasz Diskcopy #669 üzenetére
Procedure ClearBitmap(Btm: TBitmap);
Begin
With Btm.Canvas Do
Begin
Pen.Color := clWhite;
Brush.Color := clWhite;
Rectangle(0,0,Btm.Width,Btm.Height);
End;
End;
itt jön a Tiéd :
Var Img : TImage;
For c := 1 to 5 Do
Begin
dobott[c]:=random(5)+1;
Img := Timage(Form1.FindComponent('Image'+IntToStr(c)));
ClearBitmap(Img.Picture.Bitmap);
Imagelist2.GetBitmap( dobott[c]-1, Img.Picture.Bitmap);
Img.Invalidate;
End;
próba, kemence. -
killerjohn
addikt
válasz Diskcopy #677 üzenetére
A ''mester'' azért erős....
Itt se ICQ-t, se MSN-t nem használok... Otthon nincs net, jövőhéten hozzák be... Marad a PH!. De ez nem flood. Ez a topic erre van, nem ?
Szerk: A rendszergazda nem szereti az ilyen jellegű ''chat'' cuccokat. Próbáltam elmagyarázni, de fogja fel.... mind1.
[Szerkesztve] -
killerjohn
addikt
Na, most megyek, ne keressetek... Addig is good luck ! Delphi rulez. off
-
killerjohn
addikt
Elég egyszerű, csak csinálni kell hozzá egy új komponenst, melyet így kell megcsinálni (pl TButton esetében, de másnál is müxik...)
Bocsi, de sietve dobtam össze... nem biztos, hogy fullosan OK.
---------------------------
Uses SysUtils, Classes, Controls, Messages, Graphics, ExtCtrls, Windows, Forms;
Type
TMyButton = class(TButton)
private
FOnMouseEnter : TNotifyEvent;
FOnMouseLeave : TNotifyEvent;
protected
Procedure msgMouseEnter(Var Msg: TMessage); message CM_MouseEnter;
Procedure msgMouseLeave(Var Msg: TMessage); message CM_MouseLeave;
public
Constructor Create(AOwner: TComponent); override;
published
Property OnMouseEnter : TNotifyEvent read FOnMouseEnter write FOnMouseEnter;
Property OnMouseLeave : TNotifyEvent read FOnMouseLeave write FOnMouseLeave;
End;
constructor TMyButton.Create(AOwner: TComponent);
begin
inherited;
FOnMouseEnter := nil;
FOnMouseLeave := nil;
end;
procedure TMyButton.msgMouseEnter(var Msg: TMessage);
begin
If csDesigning in Self.ComponentState Then EXIT;
If Assigned(FOnMouseEnter) Then FOnMouseEnter(Self);
End;
procedure TMyButton.msgMouseLeave(var Msg: TMessage);
begin
If csDesigning in Self.ComponentState Then EXIT;
If Assigned(FOnMouseLeave) Then FOnMouseLeave(Self);
end; -
killerjohn
addikt
válasz Drótszamár #706 üzenetére
ebben nem t'ok segíteni. sorry
-
killerjohn
addikt
feldobhatnád valahová a forrást. kíváncsi vagyok. régen próbálkoztam -egy prímszámkeresőhöz- azzal, hogy egy string-ben tetszőleges nagy számot tárolok, és azzal műveletet elvégezni (pl: két string összeadása, kivonása, szorzása, osztása, egy string négyzetgyökének a megállapítása, stb.), de csak hobbi volt, és nem volt rá időm. Viszont aa van valami kész megoldásod, akkor megnézném....... Mester........
-
killerjohn
addikt
válasz Metalwarrior #723 üzenetére
Uses JPEG;
Image1.Picture.RegisterFileFormat() metódus. nézd meg a paraméterlistáját. -
killerjohn
addikt
válasz Imike_80 #732 üzenetére
Var Circle_X,Circle_Y : Integer;
Procedure TForm1.Image1MouseDown(Sender: TObject.......);
Begin
Circle_X := X;
Circle_Y := Y;
End;
Procedure TForm1.Image1MouseUp(Sender: TObject....);
Var Radius : Integer;
Begin
Radius := sqrt( sqr(Abs(X-Circle_X))+sqr(Abs(Y-Circle_Y)) );
With Image1.Cavas do
Begin
Pen.Style := psSolid;
Brush.Style := psSolid;
Pen.Color := clBlack;
Brush.Color := clYellow;
Ellipse(Circle_X-Radius,CircleY-Radius,CircleX+Radius,CircleY+Radius);
End;
End;
szerintem...
de valószínűleg (tuti) van benne 1-2 hiba, mert fejből írtam, ide az új hozzászólás ablakba... -
killerjohn
addikt
válasz killerjohn #737 üzenetére
de hasonló a megoldás. most nincs időm írni, de ebből már nem nehéz kitatlálni az alapjait............
-
killerjohn
addikt
válasz Imike_80 #747 üzenetére
kiszámolja a lenyomáskor eltárolt koordináták és a felengedéskor átadott koordináták távolságát (pitagorasz tétel a2+b2=c2 [2=négyzet])
utólag belegondolva működnie kell, de tényleg nem garantálom. TRY IT !
ez sor :
Ellipse(Circle_X-Radius,CircleY-Radius,CircleX+Radius,CircleY+Radius);
javítva :
Ellipse(Circle_X-Radius,Circle_Y-Radius,Circle_X+Radius,Circle_Y+Radius);
(kihagytam az aláhúzásokat a változónevekből...)
[Szerkesztve] -
killerjohn
addikt
válasz The TYPhoon #779 üzenetére
Var lvData : TListView;
Begin
lvData.Items.Clear;
For i := 1 To N Do
Begin
With lvData.Items.Add Do
Begin
Caption := '1. oszlop';
SubItems.Add('2. oszlop');
SubItems.Add('3. osztlop');
End;
End;
End;
ennyi.
Új hozzászólás Aktív témák
- Egészen nagy teljesítményspektrumon fedné le a mobil piacot az AMD
- Motorola Edge 40 neo - színre és formára
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Autós kamerák
- Android alkalmazások - szoftver kibeszélő topik
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- Ukrajnai háború
- Videó stream letöltése
- Gaming notebook topik
- Motorola Moto G24 Power - hol van az erő?
- További aktív témák...