|
var Form1: TCLForm; SourceImg: TCLImage; EdtCName: TclProEdit; CameraBtn, SaveBtn: TclButton; CameraImg: TCLImage; ImageStr: String; clRest: TclRest; statusLabel: TclProLabel;
void CheckImageSize var MemStream: TCLMemoryStream; fileSize: Integer; fileSizeMB: Double; { MemStream = TCLMemoryStream.Create; CameraImg.Bitmap.SaveToStream(MemStream); fileSize = MemStream.Size; fileSizeMB = fileSize / 1024 / 1024; // 3MB = 3145728 bytes if (fileSize > 3145728) { ShowMessage('Resim çok büyük! Maksimum 3MB olmalı.'); ShowMessage('Mevcut boyut: ' + FloatToStr(fileSizeMB) + 'MB'); MemStream.Free; Exit; } statusLabel.Text = 'Resim boyutu: ' + FloatToStr(fileSizeMB) + 'MB'; MemStream.Free; }
void OnRestCompleted { ShowMessage('İşlem tamamlandı: ' + clRest.Response); }
void AddCategory var output: String; MemStream: TCLMemoryStream; { try // Resim boyutunu kontrol et CheckImageSize; // REST işlemi clRest.BaseURL = 'MY_ADDRESSS/addcategory'; clRest.Accept = 'application/json'; clRest.Method = rmPOST; clRest.ConnectTimeOut = 30000; // 30 saniye timeout if (EdtCName.Text == '') { ShowMessage('Lütfen gerekli kısımları doldurun.'); } else { clRest.AddBody( '{"category_name" : "' + EdtCName.Text + '", "category_image" : "' + ImageStr + '"}', 'application/json' ); // Asenkron çalıştır clRest.OnCompleted = 'OnRestCompleted'; clRest.ExecuteAsync; } except ShowMessage('Exception Class: ' + LastExceptionClassName + ' Exception Message: ' + LastExceptionMessage); } }
void onbtnClick { try // Resim seç Clomosy.ImageChooser(Form1, CameraImg); // Seçim sonrası hemen kontrol et CheckImageSize; except ShowMessage('Exception Class: ' + LastExceptionClassName + ' Exception Message: ' + LastExceptionMessage); } }
// Resmi getir kontrol et void memoBase64ToStreamClick { try clRest = TCLRest.Create; clRest.BaseURL = 'MY_ADDRESSS/category-image/8'; clRest.Accept = 'image/png'; clRest.Method = rmGET; clRest.Execute; SourceImg.Bitmap.LoadFromStream(clRest.StreamResponse); except ShowMessage('Exception Class: ' + LastExceptionClassName + ' Exception Message: ' + LastExceptionMessage); } }
{ Form1 = TCLForm.Create(Self); Form1.SetFormColor('#085e26', '#4dcc1e', clGHorizontal); Form1.clSetCaption('Kategori Ekleme'); Form1.clSetWindowState(fwsMaximized);
clRest = TCLRest.Create; // Status Label statusLabel = Form1.AddNewProLabel(Form1, 'statusLabel', 'Resim seçiniz...'); statusLabel.Align = alMostTop; statusLabel.Height = 30; statusLabel.clProSettings.FontColor = clAlphaColor.clHexToColor('#ffffff'); statusLabel.clProSettings.FontSize = 16; statusLabel.clProSettings.TextSettings.Font.Style = [fsBold]; statusLabel.SetclProSettings(statusLabel.clProSettings); // Source Image SourceImg = Form1.AddNewImage(Form1, 'SourceImg'); SourceImg.Height = 200; SourceImg.Width = 200; SourceImg.Align = alTop; SourceImg.Margins.Top = 10; SourceImg.Margins.Left = 10; SourceImg.Margins.Right = 10; Form1.setImage(SourceImg, ' https://clomosy.com/learn/clomosy.png" rel="nofollow - https://clomosy.com/learn/clomosy.png '); // Edit EdtCName = Form1.AddNewProEdit(Form1, 'EdtCName', 'Kategori ismini giriniz..'); EdtCName.Align = alTop; EdtCName.Width = 370; EdtCName.Height = 50; EdtCName.Margins.Top = 10; EdtCName.Margins.Left = 10; EdtCName.Margins.Right = 10; EdtCName.clProSettings.FontColor = clAlphaColor.clHexToColor('#808080'); EdtCName.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#ebebeb'); EdtCName.clProSettings.BorderColor = clAlphaColor.clHexToColor('#000000'); EdtCName.clProSettings.BorderWidth = 2; EdtCName.clProSettings.FontSize = 18; EdtCName.clProSettings.FontVertAlign = palcenter; EdtCName.clProSettings.FontHorzAlign = palcenter; EdtCName.clProSettings.TextSettings.Font.Style = [fsBold]; EdtCName.clProSettings.IsFill = True; EdtCName.clProSettings.IsRound = True; EdtCName.clProSettings.RoundHeight = 10; EdtCName.clProSettings.RoundWidth = 10; EdtCName.SetclProSettings(EdtCName.clProSettings); // Camera Button CameraBtn = Form1.AddNewButton(Form1, 'CameraBtn', 'RESİM SEÇ'); Form1.AddNewEvent(CameraBtn, tbeOnClick, 'onbtnClick'); CameraBtn.Align = alBottom; CameraBtn.Height = 50; CameraBtn.Margins.Bottom = 10; CameraBtn.Margins.Left = 10; CameraBtn.Margins.Right = 10; // Save Button SaveBtn = Form1.AddNewButton(Form1, 'SaveBtn', 'KAYDET'); Form1.AddNewEvent(SaveBtn, tbeOnClick, 'AddCategory'); SaveBtn.Align = alBottom; SaveBtn.Height = 50; SaveBtn.Margins.Bottom = 10; SaveBtn.Margins.Left = 10; SaveBtn.Margins.Right = 10; // Camera Image CameraImg = Form1.AddNewImage(Form1, 'CameraImg'); CameraImg.Height = 300; CameraImg.Width = 300; CameraImg.Align = alCenter; CameraImg.Margins.Top = 10; CameraImg.Margins.Bottom = 10; Form1.Run; }
|