Clomosy | Forum Ana Sayfa
Forum Anasayfa Forum Anasayfa > Genel Programlama > Genel İşlemler
  Aktif Konular Aktif Konular RSS - kamera sorunu
  SSS SSS  Forumu Ara   Etkinlikler   Kayıt Ol Kayıt Ol  Giriş Giriş

Clomosy Resmi Forum Sitesidir. Amacımız kullanıcılarımıza, iş ortaklarımıza, danışmanlara, yazılımcılara programlarımız hakkında destek ve bilgi vermektir.

kamera sorunu

 Yanıt Yaz Yanıt Yaz
Yazar
Mesaj
  Konu Arama Konu Arama  Topic Seçenekleri Topic Seçenekleri
kayra.55 Açılır Kutu İzle
Yeni Üye
Yeni Üye


Kayıt Tarihi: 17 Kasım 2025
Durum: Aktif Değil
Puanlar: 27
Mesaj Seçenekleri Mesaj Seçenekleri   Teşekkürler (0) Teşekkürler(0)   Alıntı kayra.55 Alıntı  Yanıt YazCevapla Mesajın Direkt Linki Konu: kamera sorunu
    Gönderim Zamanı: 3 Saat 27 Dakika Önce Saat 11:13
var
  FormMain: TclForm;
  PnlMainRoot, PnlNavBar, PnlHeaderTop, PnlHeaderForm: TclProPanel;
  PnlMiddleGrid: TclProPanel; 
  BtnScroll: TclHorzScrollBox;
  ScrollForm: TclVertScrollBox;

  LblNavTitle, LblGridTitle, LblPhotoTitle: TClProLabel;
  BtnGeri, BtnYeni, BtnKaydet, BtnSil, BtnFontBuyut, BtnFontKucult, BtnResimCek, BtnOperatorKaydet: TClProButton;

  // ARAYÜZ NESNELERİ 
  Arz_GrpBelgeNo, Arz_GrpTarih, Arz_GrpBakimTipi, Arz_GrpBakimTuru, Arz_GrpArizaKodu, Arz_GrpMakineKodu, Arz_GrpBaglanti: TclProPanel;
  Arz_GrpBaslangic, Arz_GrpGirisZamani, Arz_GrpPlanlananBitis, Arz_GrpKisiSayisi, Arz_GrpOperatorGrup, Arz_GrpOperator, Arz_GrpOperatorBilgisi, Arz_GrpAciklama, Arz_GrpBakimIhmal: TclProPanel;

  Arz_LblBelgeNo, Arz_LblTarih, Arz_LblBakimTipi, Arz_LblBakimTuru, Arz_LblArizaKodu, Arz_LblMakineKodu, Arz_LblBaglanti: TClProLabel;
  Arz_LblBaslangic, Arz_LblGirisZamani, Arz_LblPlanlananBitis, Arz_LblKisiSayisi, Arz_LblOperatorGrup, Arz_LblOperator, Arz_LblOperatorBilgisi, Arz_LblAciklama, Arz_LblBakimIhmal: TClProLabel;

  Arz_EdtBelgeNo, Arz_EdtTarih, Arz_EdtBakimTipi, Arz_EdtBakimTuru, Arz_EdtArizaKodu, Arz_EdtBaglanti: TclProEdit;
  Arz_EdtBaslangic, Arz_EdtBaslangicSaat, Arz_EdtGirisZamani, Arz_EdtPlanlananBitis, Arz_EdtKisiSayisi, Arz_EdtOperatorBilgisi, Arz_EdtAciklama: TclProEdit;

  Arz_CmbMakine, Arz_CmbOperatorGrup, Arz_CmbOperator, Arz_CmbYeniOperatorGrup: TclComboBox;
  Arz_MemBakimIhmal: TclMemo;
  
  Arz_ListAriza: TClProListView; 
  Arz_Zone: TClProListViewDesignerPanel;
  Arz_LblMain, Arz_LblSub: TClProLabel;
  
  // DONMAYI VE GÖRÜNMEZLİĞİ ÖNLEYEN ÇERÇEVE VE KAMERA NESNELERİ
  Arz_ImgPhotoFrame: TClProImage;
  Arz_ImgPhoto: TclImage;
  
  // VERI DIZILERI
  Arz_BelgeNo, Arz_MakineArr, Arz_BakimIhmalArr, Arz_BasTarih, Arz_BitTarih, Arz_ArizaDurum, Arz_KayitTarih: array [0..50] of String;
  Arz_BakTipiArr, Arz_BakTuruArr, Arz_ArzKodArr, Arz_BaglantiArr, Arz_KisiSayisiArr, Arz_AciklamaArr: array [0..50] of String;
  
  Arz_ArizaCount, TmpIndeks, SeciliKayitIndeks: Integer;
  Arz_ArizaJson: String;
  Arz_KayitliOperatorA, Arz_KayitliOperatorB, Arz_KayitliOperatorC: String;
  UiFontSize: Integer;

// =====================================================================
// --- TASARIM STILLERI ---
// =====================================================================

void StyleSurface(APanel: TclProPanel);
{
  APanel.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#F3F4F6');
  APanel.clProSettings.BorderColor = clAlphaColor.clHexToColor('#D1D5DB');
  APanel.clProSettings.BorderWidth = 1;
  APanel.clProSettings.IsFill = True;
  APanel.clProSettings.IsRound = True;
  APanel.clProSettings.RoundHeight = 8;
  APanel.clProSettings.RoundWidth = 8;
  APanel.SetclProSettings(APanel.clProSettings);
}

void StyleHeaderBar(APanel: TclProPanel);
{
  APanel.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#111827');
  APanel.clProSettings.BorderWidth = 0;
  APanel.clProSettings.IsFill = True;
  APanel.SetclProSettings(APanel.clProSettings);
}

void StyleWhiteButton(AButton: TClProButton);
{
  AButton.clProSettings.BackgroundColor = clAlphaColor.clWhite;
  AButton.clProSettings.FontColor = clAlphaColor.clHexToColor('#111827'); 
  AButton.clProSettings.BorderColor = clAlphaColor.clHexToColor('#D1D5DB');
  AButton.clProSettings.BorderWidth = 1;
  AButton.clProSettings.IsFill = True;
  AButton.clProSettings.IsRound = True;
  AButton.clProSettings.RoundHeight = 6;
  AButton.clProSettings.RoundWidth = 6;
  AButton.clProSettings.FontSize = UiFontSize;
  AButton.clProSettings.TextSettings.Font.Style = [fsBold];
  AButton.SetclProSettings(AButton.clProSettings);
}

void StyleInputEdit(AEdit: TclProEdit);
{
  AEdit.clProSettings.FontColor = clAlphaColor.clHexToColor('#111827');
  AEdit.clProSettings.BorderColor = clAlphaColor.clHexToColor('#9CA3AF');
  AEdit.clProSettings.BackgroundColor = clAlphaColor.clWhite;
  AEdit.clProSettings.BorderWidth = 1;
  AEdit.clProSettings.IsFill = True;
  AEdit.clProSettings.IsRound = True;
  AEdit.clProSettings.RoundHeight = 5;
  AEdit.clProSettings.RoundWidth = 5;
  AEdit.clProSettings.FontSize = UiFontSize;
  AEdit.SetclProSettings(AEdit.clProSettings);
}

void StyleReadonlyEdit(AEdit: TclProEdit);
{
  AEdit.clProSettings.FontColor = clAlphaColor.clHexToColor('#374151');
  AEdit.clProSettings.BorderColor = clAlphaColor.clHexToColor('#D1D5DB');
  AEdit.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#F9FAFB');
  AEdit.clProSettings.BorderWidth = 1;
  AEdit.clProSettings.IsFill = True;
  AEdit.clProSettings.IsRound = True;
  AEdit.clProSettings.RoundHeight = 5;
  AEdit.clProSettings.RoundWidth = 5;
  AEdit.clProSettings.FontSize = UiFontSize;
  AEdit.SetclProSettings(AEdit.clProSettings);
}

void StyleActionButton(AButton: TClProButton);
{
  AButton.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#F9FAFB');
  AButton.clProSettings.FontColor = clAlphaColor.clHexToColor('#374151');
  AButton.clProSettings.BorderColor = clAlphaColor.clHexToColor('#9CA3AF');
  AButton.clProSettings.BorderWidth = 1;
  AButton.clProSettings.IsFill = True;
  AButton.clProSettings.IsRound = True;
  AButton.clProSettings.RoundHeight = 6;
  AButton.clProSettings.RoundWidth = 6;
  AButton.clProSettings.FontSize = UiFontSize;
  AButton.clProSettings.TextSettings.Font.Style = [fsBold];
  AButton.SetclProSettings(AButton.clProSettings);
}

void StylePrimaryButton(AButton: TClProButton);
{
  AButton.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#2F343A');
  AButton.clProSettings.FontColor = clAlphaColor.clWhite;
  AButton.clProSettings.BorderColor = clAlphaColor.clHexToColor('#2F343A');
  AButton.clProSettings.BorderWidth = 1;
  AButton.clProSettings.IsFill = True;
  AButton.clProSettings.IsRound = True;
  AButton.clProSettings.RoundHeight = 6;
  AButton.clProSettings.RoundWidth = 6;
  AButton.clProSettings.FontSize = UiFontSize;
  AButton.clProSettings.TextSettings.Font.Style = [fsBold];
  AButton.SetclProSettings(AButton.clProSettings);
}

void StyleInputPanel(APanel: TclProPanel);
{
  APanel.clProSettings.BackgroundColor = clAlphaColor.clWhite;
  APanel.clProSettings.BorderColor = clAlphaColor.clHexToColor('#D1D5DB');
  APanel.clProSettings.BorderWidth = 1;
  APanel.clProSettings.IsFill = True;
  APanel.clProSettings.IsRound = True;
  APanel.clProSettings.RoundHeight = 6;
  APanel.clProSettings.RoundWidth = 6;
  APanel.SetclProSettings(APanel.clProSettings);
}

void StyleInputLabel(ALabel: TClProLabel);
{
  ALabel.clProSettings.FontColor = clAlphaColor.clHexToColor('#374151');
  ALabel.clProSettings.FontSize = UiFontSize;
  ALabel.clProSettings.TextSettings.Font.Style = [fsBold];
  ALabel.SetclProSettings(ALabel.clProSettings);
}

void StyleSectionTitle(ALabel: TClProLabel);
{
  ALabel.clProSettings.FontColor = clAlphaColor.clHexToColor('#111827');
  ALabel.clProSettings.FontSize = UiFontSize;
  ALabel.clProSettings.TextSettings.Font.Style = [fsBold];
  ALabel.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#E5E7EB');
  ALabel.clProSettings.BorderColor = clAlphaColor.clHexToColor('#D1D5DB');
  ALabel.clProSettings.BorderWidth = 1;
  ALabel.clProSettings.IsFill = True;
  ALabel.clProSettings.IsRound = True;
  ALabel.clProSettings.RoundHeight = 5;
  ALabel.clProSettings.RoundWidth = 5;
  ALabel.SetclProSettings(ALabel.clProSettings);
}

void StyleInputFocus;
var
  FocusEdit: TclProEdit;
{
  FocusEdit = TclProEdit(FormMain.ClSender);
  FocusEdit.clProSettings.BorderColor = clAlphaColor.clHexToColor('#4B5563');
  FocusEdit.clProSettings.BorderWidth = 2;
  FocusEdit.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#FFFFFF');
  FocusEdit.SetclProSettings(FocusEdit.clProSettings);
}

void StyleInputBlur;
var
  BlurEdit: TclProEdit;
{
  BlurEdit = TclProEdit(FormMain.ClSender);
  StyleInputEdit(BlurEdit);
}

void BindInputFocus(AEdit: TclProEdit);
{
  FormMain.AddNewEvent(AEdit, tbeOnEnter, 'StyleInputFocus');
  FormMain.AddNewEvent(AEdit, tbeOnExit, 'StyleInputBlur');
}

// =====================================================================
// --- DINAMIK FONT KONTROLU ---
// =====================================================================

void ApplyFontScale;
{
  BtnGeri.clProSettings.FontSize = UiFontSize + 5;
  BtnGeri.SetclProSettings(BtnGeri.clProSettings);

  LblNavTitle.clProSettings.FontSize = UiFontSize + 4;
  LblNavTitle.SetclProSettings(LblNavTitle.clProSettings);

  StyleWhiteButton(BtnYeni);
  StyleWhiteButton(BtnKaydet);
  StyleWhiteButton(BtnSil);
  StyleWhiteButton(BtnFontKucult);
  StyleWhiteButton(BtnFontBuyut);
  StyleActionButton(BtnOperatorKaydet);
  StylePrimaryButton(BtnResimCek);

  StyleInputLabel(Arz_LblBelgeNo);
  StyleInputLabel(Arz_LblTarih);
  StyleInputLabel(Arz_LblBakimTipi);
  StyleInputLabel(Arz_LblBakimTuru);
  StyleInputLabel(Arz_LblArizaKodu);
  StyleInputLabel(Arz_LblMakineKodu);
  StyleInputLabel(Arz_LblBaglanti);
  StyleInputLabel(Arz_LblBaslangic);
  StyleInputLabel(Arz_LblGirisZamani);
  StyleInputLabel(Arz_LblPlanlananBitis);
  StyleInputLabel(Arz_LblKisiSayisi);
  StyleInputLabel(Arz_LblOperatorGrup);
  StyleInputLabel(Arz_LblOperator);
  StyleInputLabel(Arz_LblOperatorBilgisi);
  StyleInputLabel(Arz_LblAciklama);
  
  StyleSectionTitle(Arz_LblBakimIhmal);
  StyleSectionTitle(LblGridTitle);
  StyleSectionTitle(LblPhotoTitle);

  StyleInputEdit(Arz_EdtBelgeNo);
  StyleReadonlyEdit(Arz_EdtTarih);
  StyleInputEdit(Arz_EdtBakimTipi);
  StyleInputEdit(Arz_EdtBakimTuru);
  StyleInputEdit(Arz_EdtArizaKodu);
  StyleInputEdit(Arz_EdtBaglanti);
  StyleReadonlyEdit(Arz_EdtBaslangicSaat);
  StyleReadonlyEdit(Arz_EdtBaslangic);
  StyleReadonlyEdit(Arz_EdtGirisZamani);
  StyleInputEdit(Arz_EdtPlanlananBitis);
  StyleInputEdit(Arz_EdtKisiSayisi);
  StyleInputEdit(Arz_EdtOperatorBilgisi);
  StyleInputEdit(Arz_EdtAciklama);

  Arz_MemBakimIhmal.TextSettings.Font.Size = UiFontSize;

  Arz_LblMain.clProSettings.FontSize = UiFontSize + 2;
  Arz_LblMain.SetclProSettings(Arz_LblMain.clProSettings);
  
  Arz_LblSub.clProSettings.FontSize = UiFontSize;
  Arz_LblSub.SetclProSettings(Arz_LblSub.clProSettings);
}

void BtnFontBuyutClick;
{
  if (UiFontSize < 16)
  {
    UiFontSize = UiFontSize + 1;
    ApplyFontScale;
  }
}

void BtnFontKucultClick;
{
  if (UiFontSize > 10)
  {
    UiFontSize = UiFontSize - 1;
    ApplyFontScale;
  }
}

// =====================================================================
// --- MANTIK ---
// =====================================================================

void OperatorGrupDegisti;
{
  Arz_CmbOperator.Items.Clear;

  if (Arz_CmbOperatorGrup.Text == 'Hepsi')
  {
    Arz_CmbOperator.AddItem('A1 - Ahmet Yilmaz (Mekanik)', 'A1');
    Arz_CmbOperator.AddItem('A2 - Mehmet Kaya (Elektrik)', 'A2');
    Arz_CmbOperator.AddItem('B1 - Veli Demir (Genel)', 'B1');
    Arz_CmbOperator.AddItem('B2 - Ayse Celik (Genel)', 'B2');
    Arz_CmbOperator.AddItem('C1 - Hasan Polat (Motor)', 'C1');

    if (Arz_KayitliOperatorA <> '') { Arz_CmbOperator.AddItem(Arz_KayitliOperatorA + ' (Kendi Kaydi)', 'USR_A'); }
    if (Arz_KayitliOperatorB <> '') { Arz_CmbOperator.AddItem(Arz_KayitliOperatorB + ' (Kendi Kaydi)', 'USR_B'); }
    if (Arz_KayitliOperatorC <> '') { Arz_CmbOperator.AddItem(Arz_KayitliOperatorC + ' (Kendi Kaydi)', 'USR_C'); }
  }

  if (Arz_CmbOperatorGrup.Text == 'A Grubu')
  {
    Arz_CmbOperator.AddItem('A1 - Ahmet Yilmaz (Mekanik)', 'A1');
    Arz_CmbOperator.AddItem('A2 - Mehmet Kaya (Elektrik)', 'A2');
    if (Arz_KayitliOperatorA <> '') { Arz_CmbOperator.AddItem(Arz_KayitliOperatorA + ' (Kendi Kaydi)', 'USR_A'); }
  }

  if (Arz_CmbOperatorGrup.Text == 'B Grubu')
  {
    Arz_CmbOperator.AddItem('B1 - Veli Demir (Genel)', 'B1');
    Arz_CmbOperator.AddItem('B2 - Ayse Celik (Genel)', 'B2');
    if (Arz_KayitliOperatorB <> '') { Arz_CmbOperator.AddItem(Arz_KayitliOperatorB + ' (Kendi Kaydi)', 'USR_B'); }
  }

  if (Arz_CmbOperatorGrup.Text == 'C Grubu')
  {
    Arz_CmbOperator.AddItem('C1 - Hasan Polat (Motor)', 'C1');
    if (Arz_KayitliOperatorC <> '') { Arz_CmbOperator.AddItem(Arz_KayitliOperatorC + ' (Kendi Kaydi)', 'USR_C'); }
  }

  Arz_CmbOperator.ItemIndex = -1;
}

void Arz_BtnOperatorKaydetClick;
{
  if (Arz_EdtOperatorBilgisi.Text == '')
  {
    ShowMessage('Lutfen once Operator Bilgisi alanina ad soyad giriniz.');
  }

  if (Arz_EdtOperatorBilgisi.Text <> '')
  {
    if (Arz_CmbYeniOperatorGrup.ItemIndex == -1)
    {
      ShowMessage('Lutfen kaydedilecek operatorun grubunu (A, B, C) seciniz.');
    }

    if (Arz_CmbYeniOperatorGrup.Text == 'A Grubu')
    {
      Arz_KayitliOperatorA = 'A - ' + Arz_EdtOperatorBilgisi.Text;
      OperatorGrupDegisti;
      ShowMessage('Operator A Grubu listesine kaydedildi.');
      Arz_EdtOperatorBilgisi.Text = '';
      Arz_CmbYeniOperatorGrup.ItemIndex = -1;
    }

    if (Arz_CmbYeniOperatorGrup.Text == 'B Grubu')
    {
      Arz_KayitliOperatorB = 'B - ' + Arz_EdtOperatorBilgisi.Text;
      OperatorGrupDegisti;
      ShowMessage('Operator B Grubu listesine kaydedildi.');
      Arz_EdtOperatorBilgisi.Text = '';
      Arz_CmbYeniOperatorGrup.ItemIndex = -1;
    }

    if (Arz_CmbYeniOperatorGrup.Text == 'C Grubu')
    {
      Arz_KayitliOperatorC = 'C - ' + Arz_EdtOperatorBilgisi.Text;
      OperatorGrupDegisti;
      ShowMessage('Operator C Grubu listesine kaydedildi.');
      Arz_EdtOperatorBilgisi.Text = '';
      Arz_CmbYeniOperatorGrup.ItemIndex = -1;
    }
  }
}

void Arz_CmbOperatorGrupChanged;
{
  OperatorGrupDegisti;
}

void Arz_SetCurrentDateTime;
{
  Arz_EdtTarih.Text = DateToStr(Now);
  Arz_EdtBaslangic.Text = DateToStr(Now);
  Arz_EdtBaslangicSaat.Text = TimeToStr(Now);
  Arz_EdtGirisZamani.Text = DateToStr(Now) + ' ' + TimeToStr(Now);
}

void Arz_LoadDemoData;
{
  SeciliKayitIndeks = -1; 
  Arz_ArizaCount = 1;
  Arz_BelgeNo[0] = 'BLG-001'; Arz_KayitTarih[0] = '05.05.2026';
  Arz_MakineArr[0] = 'MK-001 | CNC Dik Islem'; Arz_ArizaDurum[0] = 'Tamamlandi';
  Arz_BakimIhmalArr[0] = 'Rutin bakim yapildi.';
  Arz_BasTarih[0] = DateToStr(Now);
  Arz_BitTarih[0] = '2 Saat';
  
  Arz_BakTipiArr[0] = 'Mekanik';
  Arz_BakTuruArr[0] = 'Periyodik';
  Arz_ArzKodArr[0] = 'KOD-123';
  Arz_BaglantiArr[0] = 'Yok';
  Arz_KisiSayisiArr[0] = '2';
  Arz_AciklamaArr[0] = 'Genel kontrol saglandi.';
  
  Arz_KayitliOperatorA = ''; Arz_KayitliOperatorB = ''; Arz_KayitliOperatorC = '';
}

void Arz_ClearForm;
{
  SeciliKayitIndeks = -1; 
  
  Arz_EdtBelgeNo.Text = '';
  Arz_EdtBakimTipi.Text = ''; 
  Arz_EdtBakimTuru.Text = ''; 
  Arz_EdtArizaKodu.Text = '';
  Arz_CmbMakine.ItemIndex = -1;
  Arz_EdtBaglanti.Text = '';
  Arz_EdtPlanlananBitis.Text = '';
  Arz_EdtKisiSayisi.Text = '0';
  Arz_EdtOperatorBilgisi.Text = '';
  Arz_EdtAciklama.Text = '';
  Arz_MemBakimIhmal.Lines.Text = ''; 
  
  Arz_CmbYeniOperatorGrup.ItemIndex = -1;
  Arz_CmbOperatorGrup.ItemIndex = 0;
  OperatorGrupDegisti;
  Arz_CmbOperator.ItemIndex = -1;

  Arz_SetCurrentDateTime;
}

void Arz_RefreshList;
{
  Arz_ArizaJson = '[';
  TmpIndeks = Arz_ArizaCount - 1;
  while (TmpIndeks >= 0)
  {
    if (Length(Arz_ArizaJson) > 1) { Arz_ArizaJson = Arz_ArizaJson + ','; }
    Arz_ArizaJson = Arz_ArizaJson + '{"MAIN_TEXT":"' + Arz_MakineArr[TmpIndeks] + '","SUB_TEXT":"' + Arz_BelgeNo[TmpIndeks] + ' - Durum: ' + Arz_ArizaDurum[TmpIndeks] + '"}';
    TmpIndeks = TmpIndeks - 1;
  }
  Arz_ArizaJson = Arz_ArizaJson + ']';
  Arz_ListAriza.clLoadProListViewDataFromDataset(Clomosy.ClDataSetFromJSON(Arz_ArizaJson));
}

void Arz_ListedenSec;
var
  SecilenMetin, SecilenMakine: String;
  i: Integer;
{
  SecilenMetin = Arz_ListAriza.clSelectedItemData(clText); 
  
  SeciliKayitIndeks = -1;
  i = 0;
  
  while (i < Arz_ArizaCount)
  {
    if (SecilenMetin == Arz_BelgeNo + ' - Durum: ' + Arz_ArizaDurum)
    {
      SeciliKayitIndeks = i;
    }
    i = i + 1;
  }
  
  if (SeciliKayitIndeks > -1)
  {
    Arz_EdtBelgeNo.Text = Arz_BelgeNo[SeciliKayitIndeks];
    Arz_EdtBakimTipi.Text = Arz_BakTipiArr[SeciliKayitIndeks];
    Arz_EdtBakimTuru.Text = Arz_BakTuruArr[SeciliKayitIndeks];
    Arz_EdtArizaKodu.Text = Arz_ArzKodArr[SeciliKayitIndeks];
    Arz_EdtBaglanti.Text = Arz_BaglantiArr[SeciliKayitIndeks];
    Arz_EdtKisiSayisi.Text = Arz_KisiSayisiArr[SeciliKayitIndeks];
    Arz_EdtAciklama.Text = Arz_AciklamaArr[SeciliKayitIndeks];
    
    SecilenMakine = Arz_MakineArr[SeciliKayitIndeks];
    Arz_CmbMakine.ItemIndex = -1;
    if (SecilenMakine == 'MK-001 | CNC Dik Islem') { Arz_CmbMakine.ItemIndex = 0; }
    if (SecilenMakine == 'MK-045 | Paketleme Bandi') { Arz_CmbMakine.ItemIndex = 1; }
    if (SecilenMakine == 'MK-082 | Lazer Kesim') { Arz_CmbMakine.ItemIndex = 2; }
    
    Arz_MemBakimIhmal.Lines.Text = Arz_BakimIhmalArr[SeciliKayitIndeks];
    Arz_EdtBaslangic.Text = Arz_BasTarih[SeciliKayitIndeks];
    Arz_EdtPlanlananBitis.Text = Arz_BitTarih[SeciliKayitIndeks];
    
    ShowMessage('Kayıt içeriği formata yüklendi. Tüm alanlar geri geldi.');
  }
}

void Arz_BtnYeniClick;
{
  Arz_ClearForm;
  ShowMessage('Yeni bir sayfa açıldı. Önceki kayıtlara dönmek için aşağıdaki listeden seçebilirsiniz.');
}

void Arz_BtnSilClick;
{
  Arz_ClearForm;
  ShowMessage('Form temizlendi ve Yeni Kayıt sayfasına geçildi.');
}

void Arz_KaydetKayit;
{
  if (Arz_EdtBelgeNo.Text == '') { ShowMessage('Lutfen Belge No giriniz!'); Exit; }
  if (Arz_CmbMakine.ItemIndex == -1) { ShowMessage('Lutfen Makine Kodu secin!'); Exit; }
  if (Trim(Arz_MemBakimIhmal.Lines.Text) == '') { ShowMessage('Hata: Bakim ihmal notu zorunludur!'); Exit; }
  
  if (SeciliKayitIndeks == -1) 
  {
    if (Arz_ArizaCount >= 50) { ShowMessage('Kapasite dolu!'); Exit; }

    Arz_BelgeNo[Arz_ArizaCount] = Trim(Arz_EdtBelgeNo.Text);
    Arz_MakineArr[Arz_ArizaCount] = Arz_CmbMakine.Text;
    Arz_BakimIhmalArr[Arz_ArizaCount] = Trim(Arz_MemBakimIhmal.Lines.Text);
    Arz_BasTarih[Arz_ArizaCount] = Arz_EdtBaslangic.Text;
    Arz_BitTarih[Arz_ArizaCount] = Arz_EdtPlanlananBitis.Text;
    
    Arz_BakTipiArr[Arz_ArizaCount] = Arz_EdtBakimTipi.Text;
    Arz_BakTuruArr[Arz_ArizaCount] = Arz_EdtBakimTuru.Text;
    Arz_ArzKodArr[Arz_ArizaCount] = Arz_EdtArizaKodu.Text;
    Arz_BaglantiArr[Arz_ArizaCount] = Arz_EdtBaglanti.Text;
    Arz_KisiSayisiArr[Arz_ArizaCount] = Arz_EdtKisiSayisi.Text;
    Arz_AciklamaArr[Arz_ArizaCount] = Arz_EdtAciklama.Text;

    Arz_KayitTarih[Arz_ArizaCount] = DateToStr(Now);
    Arz_ArizaDurum[Arz_ArizaCount] = 'Kaydedildi';
    
    Arz_ArizaCount = Arz_ArizaCount + 1;
    ShowMessage('Yeni kayıt başarıyla listeye eklendi.');
  }
  else 
  {
    Arz_BelgeNo[SeciliKayitIndeks] = Trim(Arz_EdtBelgeNo.Text);
    Arz_MakineArr[SeciliKayitIndeks] = Arz_CmbMakine.Text;
    Arz_BakimIhmalArr[SeciliKayitIndeks] = Trim(Arz_MemBakimIhmal.Lines.Text);
    Arz_BitTarih[SeciliKayitIndeks] = Arz_EdtPlanlananBitis.Text;
    
    Arz_BakTipiArr[SeciliKayitIndeks] = Arz_EdtBakimTipi.Text;
    Arz_BakTuruArr[SeciliKayitIndeks] = Arz_EdtBakimTuru.Text;
    Arz_ArzKodArr[SeciliKayitIndeks] = Arz_EdtArizaKodu.Text;
    Arz_BaglantiArr[SeciliKayitIndeks] = Arz_EdtBaglanti.Text;
    Arz_KisiSayisiArr[SeciliKayitIndeks] = Arz_EdtKisiSayisi.Text;
    Arz_AciklamaArr[SeciliKayitIndeks] = Arz_EdtAciklama.Text;

    ShowMessage('Mevcut kayıt başarıyla güncellendi.');
  }
  
  Arz_RefreshList;
  Arz_ClearForm; 
}

// === KAMERA KODU ===
void TakePhotoClick;
{
  // Resim direkt asıl nesneye yüklenir
  Clomosy.ImageChooser(FormMain, Arz_ImgPhoto); 
}

void GoBack;
{
  FormMain.Close;
}

// =====================================================================
// --- TASARIM OLUŞTURMA ---
// =====================================================================
{
  FormMain = TclForm.Create(Self);
  
  // DİKKAT: Cihazın kendi kamerasından form'a geri dönerken çöküşleri engelleyen bayraklar
  FormMain.FormWaiting.Visible = False; 
  FormMain.LytTopBar.Visible = True; 
  FormMain.clSetWindowState(fwsMaximized);
  
  FormMain.BtnGoBack.Visible = False;
  FormMain.BtnFormMenu.Visible = False;

  UiFontSize = 12;
  
  Arz_LoadDemoData;

  PnlMainRoot = FormMain.AddNewProPanel(FormMain, 'PnlMainRoot');
  PnlMainRoot.Align = alClient;
  StyleSurface(PnlMainRoot);

  PnlNavBar = FormMain.AddNewProPanel(PnlMainRoot, 'PnlNavBar');
  PnlNavBar.Align = alTop; PnlNavBar.Height = 52; StyleHeaderBar(PnlNavBar);

  BtnGeri = FormMain.AddNewProButton(PnlNavBar, 'BtnGeri', '<');
  BtnGeri.Align = alLeft; BtnGeri.Width = 48;
  BtnGeri.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#111827');
  BtnGeri.clProSettings.FontColor = clAlphaColor.clWhite;
  BtnGeri.clProSettings.BorderWidth = 0; BtnGeri.clProSettings.IsFill = True;
  BtnGeri.clProSettings.FontSize = 17; BtnGeri.clProSettings.TextSettings.Font.Style = [fsBold];
  BtnGeri.SetclProSettings(BtnGeri.clProSettings);
  FormMain.AddNewEvent(BtnGeri, tbeOnClick, 'GoBack');

  LblNavTitle = FormMain.AddNewProLabel(PnlNavBar, 'LblNavTitle', 'Ariza Bakim Ekrani');
  LblNavTitle.Align = alCenter; 
  LblNavTitle.Width = 250;      
  LblNavTitle.clProSettings.FontColor = clAlphaColor.clWhite;
  LblNavTitle.clProSettings.FontSize = 16;
  LblNavTitle.clProSettings.TextSettings.Font.Style = [fsBold];
  LblNavTitle.SetclProSettings(LblNavTitle.clProSettings);

  ScrollForm = FormMain.AddNewVertScrollBox(PnlMainRoot, 'ScrollForm');
  ScrollForm.Align = alClient;

  // --- ÜST BUTONLAR ---
  PnlHeaderTop = FormMain.AddNewProPanel(ScrollForm, 'PnlHeaderTop');
  PnlHeaderTop.Align = alTop; PnlHeaderTop.Height = 56; StyleHeaderBar(PnlHeaderTop);

  BtnScroll = FormMain.AddNewHorzScrollBox(PnlHeaderTop, 'BtnScroll');
  BtnScroll.Align = alClient; BtnScroll.Margins.Left = 8; BtnScroll.Margins.Right = 8;

  BtnYeni = FormMain.AddNewProButton(BtnScroll, 'BtnYeni', 'Yeni');
  BtnYeni.Align = alLeft; BtnYeni.Width = 82; BtnYeni.Margins.Left = 4; BtnYeni.Margins.Top = 9; BtnYeni.Margins.Bottom = 9; 
  StyleWhiteButton(BtnYeni); 
  FormMain.AddNewEvent(BtnYeni, tbeOnClick, 'Arz_BtnYeniClick');

  BtnKaydet = FormMain.AddNewProButton(BtnScroll, 'BtnKaydet', 'Kaydet');
  BtnKaydet.Align = alLeft; BtnKaydet.Width = 88; BtnKaydet.Margins.Left = 8; BtnKaydet.Margins.Top = 9; BtnKaydet.Margins.Bottom = 9; 
  StyleWhiteButton(BtnKaydet); 
  FormMain.AddNewEvent(BtnKaydet, tbeOnClick, 'Arz_KaydetKayit');

  BtnSil = FormMain.AddNewProButton(BtnScroll, 'BtnSil', 'Sil');
  BtnSil.Align = alLeft; BtnSil.Width = 76; BtnSil.Margins.Left = 8; BtnSil.Margins.Top = 9; BtnSil.Margins.Bottom = 9; 
  StyleWhiteButton(BtnSil); 
  FormMain.AddNewEvent(BtnSil, tbeOnClick, 'Arz_BtnSilClick');

  // --- YAZI BÜYÜLT/KÜÇÜLT BUTONLARI ---
  BtnFontKucult = FormMain.AddNewProButton(BtnScroll, 'BtnFontKucult', 'Yazi -');
  BtnFontKucult.Align = alLeft; BtnFontKucult.Width = 80; BtnFontKucult.Margins.Left = 8; BtnFontKucult.Margins.Top = 9; BtnFontKucult.Margins.Bottom = 9; 
  StyleWhiteButton(BtnFontKucult); 
  FormMain.AddNewEvent(BtnFontKucult, tbeOnClick, 'BtnFontKucultClick');

  BtnFontBuyut = FormMain.AddNewProButton(BtnScroll, 'BtnFontBuyut', 'Yazi +');
  BtnFontBuyut.Align = alLeft; BtnFontBuyut.Width = 80; BtnFontBuyut.Margins.Left = 8; BtnFontBuyut.Margins.Top = 9; BtnFontBuyut.Margins.Bottom = 9; 
  StyleWhiteButton(BtnFontBuyut); 
  FormMain.AddNewEvent(BtnFontBuyut, tbeOnClick, 'BtnFontBuyutClick');

  // --- FORM ALANLARI ---
  PnlHeaderForm = FormMain.AddNewProPanel(ScrollForm, 'PnlHeaderForm');
  PnlHeaderForm.Align = alTop; PnlHeaderForm.Height = 1100; PnlHeaderForm.Margins.Top = 8; PnlHeaderForm.Margins.Left = 8; PnlHeaderForm.Margins.Right = 8; StyleSurface(PnlHeaderForm);

  // 1. Belge No
  Arz_GrpBelgeNo = FormMain.AddNewProPanel(PnlHeaderForm, 'Arz_GrpBelgeNo'); Arz_GrpBelgeNo.Align = alTop; Arz_GrpBelgeNo.Height = 58; Arz_GrpBelgeNo.Margins.Top = 6; StyleInputPanel(Arz_GrpBelgeNo);
  Arz_LblBelgeNo = FormMain.AddNewProLabel(Arz_GrpBelgeNo, 'Arz_LblBelgeNo', 'Belge No:'); Arz_LblBelgeNo.Align = alTop; Arz_LblBelgeNo.Height = 18; Arz_LblBelgeNo.Margins.Left = 10; Arz_LblBelgeNo.Margins.Top = 6; Arz_LblBelgeNo.Margins.Bottom = 3; StyleInputLabel(Arz_LblBelgeNo);
  Arz_EdtBelgeNo = FormMain.AddNewProEdit(Arz_GrpBelgeNo, 'Arz_EdtBelgeNo', ''); Arz_EdtBelgeNo.Align = alClient; Arz_EdtBelgeNo.Margins.Left = 10; Arz_EdtBelgeNo.Margins.Right = 10; Arz_EdtBelgeNo.Margins.Bottom = 7; StyleInputEdit(Arz_EdtBelgeNo); BindInputFocus(Arz_EdtBelgeNo);

  // 2. Tarih
  Arz_GrpTarih = FormMain.AddNewProPanel(PnlHeaderForm, 'Arz_GrpTarih'); Arz_GrpTarih.Align = alTop; Arz_GrpTarih.Height = 58; Arz_GrpTarih.Margins.Top = 6; StyleInputPanel(Arz_GrpTarih);
  Arz_LblTarih = FormMain.AddNewProLabel(Arz_GrpTarih, 'Arz_LblTarih', 'Tarih:'); Arz_LblTarih.Align = alTop; Arz_LblTarih.Height = 18; Arz_LblTarih.Margins.Left = 10; Arz_LblTarih.Margins.Top = 6; Arz_LblTarih.Margins.Bottom = 3; StyleInputLabel(Arz_LblTarih);
  Arz_EdtTarih = FormMain.AddNewProEdit(Arz_GrpTarih, 'Arz_EdtTarih', ''); Arz_EdtTarih.Align = alClient; Arz_EdtTarih.Margins.Left = 10; Arz_EdtTarih.Margins.Right = 10; Arz_EdtTarih.Margins.Bottom = 7; Arz_EdtTarih.Enabled = False; StyleReadonlyEdit(Arz_EdtTarih);

  // 3. Bakım Tipi
  Arz_GrpBakimTipi = FormMain.AddNewProPanel(PnlHeaderForm, 'Arz_GrpBakimTipi'); Arz_GrpBakimTipi.Align = alTop; Arz_GrpBakimTipi.Height = 58; Arz_GrpBakimTipi.Margins.Top = 6; StyleInputPanel(Arz_GrpBakimTipi);
  Arz_LblBakimTipi = FormMain.AddNewProLabel(Arz_GrpBakimTipi, 'Arz_LblBakimTipi', 'Bakim Tipi:'); Arz_LblBakimTipi.Align = alTop; Arz_LblBakimTipi.Height = 18; Arz_LblBakimTipi.Margins.Left = 10; Arz_LblBakimTipi.Margins.Top = 6; Arz_LblBakimTipi.Margins.Bottom = 3; StyleInputLabel(Arz_LblBakimTipi);
  Arz_EdtBakimTipi = FormMain.AddNewProEdit(Arz_GrpBakimTipi, 'Arz_EdtBakimTipi', ''); 
  Arz_EdtBakimTipi.Align = alClient; Arz_EdtBakimTipi.Margins.Left = 10; Arz_EdtBakimTipi.Margins.Right = 10; Arz_EdtBakimTipi.Margins.Bottom = 7; 
  Arz_EdtBakimTipi.TextPrompt = 'Seciniz...'; 
  StyleInputEdit(Arz_EdtBakimTipi); BindInputFocus(Arz_EdtBakimTipi);

  // 4. Bakım Türü
  Arz_GrpBakimTuru = FormMain.AddNewProPanel(PnlHeaderForm, 'Arz_GrpBakimTuru'); Arz_GrpBakimTuru.Align = alTop; Arz_GrpBakimTuru.Height = 58; Arz_GrpBakimTuru.Margins.Top = 6; StyleInputPanel(Arz_GrpBakimTuru);
  Arz_LblBakimTuru = FormMain.AddNewProLabel(Arz_GrpBakimTuru, 'Arz_LblBakimTuru', 'Bakim Turu:'); Arz_LblBakimTuru.Align = alTop; Arz_LblBakimTuru.Height = 18; Arz_LblBakimTuru.Margins.Left = 10; Arz_LblBakimTuru.Margins.Top = 6; Arz_LblBakimTuru.Margins.Bottom = 3; StyleInputLabel(Arz_LblBakimTuru);
  Arz_EdtBakimTuru = FormMain.AddNewProEdit(Arz_GrpBakimTuru, 'Arz_EdtBakimTuru', ''); 
  Arz_EdtBakimTuru.Align = alClient; Arz_EdtBakimTuru.Margins.Left = 10; Arz_EdtBakimTuru.Margins.Right = 10; Arz_EdtBakimTuru.Margins.Bottom = 7; 
  Arz_EdtBakimTuru.TextPrompt = 'Seciniz...'; 
  StyleInputEdit(Arz_EdtBakimTuru); BindInputFocus(Arz_EdtBakimTuru);

  // 5. Arıza Kodu
  Arz_GrpArizaKodu = FormMain.AddNewProPanel(PnlHeaderForm, 'Arz_GrpArizaKodu'); Arz_GrpArizaKodu.Align = alTop; Arz_GrpArizaKodu.Height = 58; Arz_GrpArizaKodu.Margins.Top = 6; StyleInputPanel(Arz_GrpArizaKodu);
  Arz_LblArizaKodu = FormMain.AddNewProLabel(Arz_GrpArizaKodu, 'Arz_LblArizaKodu', 'Ariza Kodu:'); Arz_LblArizaKodu.Align = alTop; Arz_LblArizaKodu.Height = 18; Arz_LblArizaKodu.Margins.Left = 10; Arz_LblArizaKodu.Margins.Top = 6; Arz_LblArizaKodu.Margins.Bottom = 3; StyleInputLabel(Arz_LblArizaKodu);
  Arz_EdtArizaKodu = FormMain.AddNewProEdit(Arz_GrpArizaKodu, 'Arz_EdtArizaKodu', ''); Arz_EdtArizaKodu.Align = alClient; Arz_EdtArizaKodu.Margins.Left = 10; Arz_EdtArizaKodu.Margins.Right = 10; Arz_EdtArizaKodu.Margins.Bottom = 7; StyleInputEdit(Arz_EdtArizaKodu); BindInputFocus(Arz_EdtArizaKodu);

  // 6. Makine Kodu (COMBOBOX)
  Arz_GrpMakineKodu = FormMain.AddNewProPanel(PnlHeaderForm, 'Arz_GrpMakineKodu'); Arz_GrpMakineKodu.Align = alTop; Arz_GrpMakineKodu.Height = 58; Arz_GrpMakineKodu.Margins.Top = 6; StyleInputPanel(Arz_GrpMakineKodu);
  Arz_LblMakineKodu = FormMain.AddNewProLabel(Arz_GrpMakineKodu, 'Arz_LblMakineKodu', 'Makine Kodu:'); Arz_LblMakineKodu.Align = alTop; Arz_LblMakineKodu.Height = 18; Arz_LblMakineKodu.Margins.Left = 10; Arz_LblMakineKodu.Margins.Top = 6; Arz_LblMakineKodu.Margins.Bottom = 3; StyleInputLabel(Arz_LblMakineKodu);
  Arz_CmbMakine = FormMain.AddNewComboBox(Arz_GrpMakineKodu, 'Arz_CmbMakine'); Arz_CmbMakine.Align = alClient; Arz_CmbMakine.Margins.Left = 10; Arz_CmbMakine.Margins.Right = 10; Arz_CmbMakine.Margins.Bottom = 7;
  Arz_CmbMakine.AddItem('MK-001 | CNC Dik Islem', 'MK-001'); Arz_CmbMakine.AddItem('MK-045 | Paketleme Bandi', 'MK-045'); Arz_CmbMakine.AddItem('MK-082 | Lazer Kesim', 'MK-082');

  // 7. Bakım Bağlantısı
  Arz_GrpBaglanti = FormMain.AddNewProPanel(PnlHeaderForm, 'Arz_GrpBaglanti'); Arz_GrpBaglanti.Align = alTop; Arz_GrpBaglanti.Height = 58; Arz_GrpBaglanti.Margins.Top = 6; StyleInputPanel(Arz_GrpBaglanti);
  Arz_LblBaglanti = FormMain.AddNewProLabel(Arz_GrpBaglanti, 'Arz_LblBaglanti', 'Bakim Baglantisi:'); Arz_LblBaglanti.Align = alTop; Arz_LblBaglanti.Height = 18; Arz_LblBaglanti.Margins.Left = 10; Arz_LblBaglanti.Margins.Top = 6; Arz_LblBaglanti.Margins.Bottom = 3; StyleInputLabel(Arz_LblBaglanti);
  Arz_EdtBaglanti = FormMain.AddNewProEdit(Arz_GrpBaglanti, 'Arz_EdtBaglanti', ''); Arz_EdtBaglanti.Align = alClient; Arz_EdtBaglanti.Margins.Left = 10; Arz_EdtBaglanti.Margins.Right = 10; Arz_EdtBaglanti.Margins.Bottom = 7; StyleInputEdit(Arz_EdtBaglanti); BindInputFocus(Arz_EdtBaglanti);

  // 8. Başlangıç Trh/Saat
  Arz_GrpBaslangic = FormMain.AddNewProPanel(PnlHeaderForm, 'Arz_GrpBaslangic'); Arz_GrpBaslangic.Align = alTop; Arz_GrpBaslangic.Height = 58; Arz_GrpBaslangic.Margins.Top = 6; StyleInputPanel(Arz_GrpBaslangic);
  Arz_LblBaslangic = FormMain.AddNewProLabel(Arz_GrpBaslangic, 'Arz_LblBaslangic', 'Baslangic Trh/Saat:'); Arz_LblBaslangic.Align = alTop; Arz_LblBaslangic.Height = 18; Arz_LblBaslangic.Margins.Left = 10; Arz_LblBaslangic.Margins.Top = 6; Arz_LblBaslangic.Margins.Bottom = 3; StyleInputLabel(Arz_LblBaslangic);
  Arz_EdtBaslangicSaat = FormMain.AddNewProEdit(Arz_GrpBaslangic, 'Arz_EdtBaslangicSaat', ''); Arz_EdtBaslangicSaat.Align = alRight; Arz_EdtBaslangicSaat.Width = 92; Arz_EdtBaslangicSaat.Margins.Right = 10; Arz_EdtBaslangicSaat.Margins.Bottom = 7; Arz_EdtBaslangicSaat.Enabled = False; StyleReadonlyEdit(Arz_EdtBaslangicSaat);
  Arz_EdtBaslangic = FormMain.AddNewProEdit(Arz_GrpBaslangic, 'Arz_EdtBaslangic', ''); Arz_EdtBaslangic.Align = alClient; Arz_EdtBaslangic.Margins.Left = 10; Arz_EdtBaslangic.Margins.Right = 8; Arz_EdtBaslangic.Margins.Bottom = 7; Arz_EdtBaslangic.Enabled = False; StyleReadonlyEdit(Arz_EdtBaslangic);

  // 9. Giriş Zamanı
  Arz_GrpGirisZamani = FormMain.AddNewProPanel(PnlHeaderForm, 'Arz_GrpGirisZamani'); Arz_GrpGirisZamani.Align = alTop; Arz_GrpGirisZamani.Height = 58; Arz_GrpGirisZamani.Margins.Top = 6; StyleInputPanel(Arz_GrpGirisZamani);
  Arz_LblGirisZamani = FormMain.AddNewProLabel(Arz_GrpGirisZamani, 'Arz_LblGirisZamani', 'Giris Zamani:'); Arz_LblGirisZamani.Align = alTop; Arz_LblGirisZamani.Height = 18; Arz_LblGirisZamani.Margins.Left = 10; Arz_LblGirisZamani.Margins.Top = 6; Arz_LblGirisZamani.Margins.Bottom = 3; StyleInputLabel(Arz_LblGirisZamani);
  Arz_EdtGirisZamani = FormMain.AddNewProEdit(Arz_GrpGirisZamani, 'Arz_EdtGirisZamani', ''); Arz_EdtGirisZamani.Align = alClient; Arz_EdtGirisZamani.Margins.Left = 10; Arz_EdtGirisZamani.Margins.Right = 10; Arz_EdtGirisZamani.Margins.Bottom = 7; Arz_EdtGirisZamani.Enabled = False; StyleReadonlyEdit(Arz_EdtGirisZamani);

  // 10. Planlanan Bitiş Süresi
  Arz_GrpPlanlananBitis = FormMain.AddNewProPanel(PnlHeaderForm, 'Arz_GrpPlanlananBitis'); Arz_GrpPlanlananBitis.Align = alTop; Arz_GrpPlanlananBitis.Height = 58; Arz_GrpPlanlananBitis.Margins.Top = 6; StyleInputPanel(Arz_GrpPlanlananBitis);
  Arz_LblPlanlananBitis = FormMain.AddNewProLabel(Arz_GrpPlanlananBitis, 'Arz_LblPlanlananBitis', 'Planlanan Bitis Suresi (Orn: 1 gun / 2 saat):'); Arz_LblPlanlananBitis.Align = alTop; Arz_LblPlanlananBitis.Height = 18; Arz_LblPlanlananBitis.Margins.Left = 10; Arz_LblPlanlananBitis.Margins.Top = 6; Arz_LblPlanlananBitis.Margins.Bottom = 3; StyleInputLabel(Arz_LblPlanlananBitis);
  Arz_EdtPlanlananBitis = FormMain.AddNewProEdit(Arz_GrpPlanlananBitis, 'Arz_EdtPlanlananBitis', ''); Arz_EdtPlanlananBitis.Align = alClient; Arz_EdtPlanlananBitis.Margins.Left = 10; Arz_EdtPlanlananBitis.Margins.Right = 10; Arz_EdtPlanlananBitis.Margins.Bottom = 7; StyleInputEdit(Arz_EdtPlanlananBitis); BindInputFocus(Arz_EdtPlanlananBitis);

  // 11. Kişi Sayısı
  Arz_GrpKisiSayisi = FormMain.AddNewProPanel(PnlHeaderForm, 'Arz_GrpKisiSayisi'); Arz_GrpKisiSayisi.Align = alTop; Arz_GrpKisiSayisi.Height = 58; Arz_GrpKisiSayisi.Margins.Top = 6; StyleInputPanel(Arz_GrpKisiSayisi);
  Arz_LblKisiSayisi = FormMain.AddNewProLabel(Arz_GrpKisiSayisi, 'Arz_LblKisiSayisi', 'Kisi Sayisi:'); Arz_LblKisiSayisi.Align = alTop; Arz_LblKisiSayisi.Height = 18; Arz_LblKisiSayisi.Margins.Left = 10; Arz_LblKisiSayisi.Margins.Top = 6; Arz_LblKisiSayisi.Margins.Bottom = 3; StyleInputLabel(Arz_LblKisiSayisi);
  Arz_EdtKisiSayisi = FormMain.AddNewProEdit(Arz_GrpKisiSayisi, 'Arz_EdtKisiSayisi', '0'); Arz_EdtKisiSayisi.Align = alClient; Arz_EdtKisiSayisi.Margins.Left = 10; Arz_EdtKisiSayisi.Margins.Right = 10; Arz_EdtKisiSayisi.Margins.Bottom = 7; StyleInputEdit(Arz_EdtKisiSayisi); BindInputFocus(Arz_EdtKisiSayisi);

  // 12. Operatör Grubu
  Arz_GrpOperatorGrup = FormMain.AddNewProPanel(PnlHeaderForm, 'Arz_GrpOperatorGrup'); Arz_GrpOperatorGrup.Align = alTop; Arz_GrpOperatorGrup.Height = 58; Arz_GrpOperatorGrup.Margins.Top = 6; StyleInputPanel(Arz_GrpOperatorGrup);
  Arz_LblOperatorGrup = FormMain.AddNewProLabel(Arz_GrpOperatorGrup, 'Arz_LblOperatorGrup', 'Operator Grubu (Filtre):'); Arz_LblOperatorGrup.Align = alTop; Arz_LblOperatorGrup.Height = 18; Arz_LblOperatorGrup.Margins.Left = 10; Arz_LblOperatorGrup.Margins.Top = 6; Arz_LblOperatorGrup.Margins.Bottom = 3; StyleInputLabel(Arz_LblOperatorGrup);
  Arz_CmbOperatorGrup = FormMain.AddNewComboBox(Arz_GrpOperatorGrup, 'Arz_CmbOperatorGrup'); Arz_CmbOperatorGrup.Align = alClient; Arz_CmbOperatorGrup.Margins.Left = 10; Arz_CmbOperatorGrup.Margins.Right = 10; Arz_CmbOperatorGrup.Margins.Bottom = 7;
  Arz_CmbOperatorGrup.AddItem('Hepsi', 'ALL'); Arz_CmbOperatorGrup.AddItem('A Grubu', 'A'); Arz_CmbOperatorGrup.AddItem('B Grubu', 'B'); Arz_CmbOperatorGrup.AddItem('C Grubu', 'C');
  FormMain.AddNewEvent(Arz_CmbOperatorGrup, tbeOnChange, 'Arz_CmbOperatorGrupChanged');

  // 13. Sorumlu Operatör
  Arz_GrpOperator = FormMain.AddNewProPanel(PnlHeaderForm, 'Arz_GrpOperator'); Arz_GrpOperator.Align = alTop; Arz_GrpOperator.Height = 58; Arz_GrpOperator.Margins.Top = 6; StyleInputPanel(Arz_GrpOperator);
  Arz_LblOperator = FormMain.AddNewProLabel(Arz_GrpOperator, 'Arz_LblOperator', 'Sorumlu Operator:'); Arz_LblOperator.Align = alTop; Arz_LblOperator.Height = 18; Arz_LblOperator.Margins.Left = 10; Arz_LblOperator.Margins.Top = 6; Arz_LblOperator.Margins.Bottom = 3; StyleInputLabel(Arz_LblOperator);
  Arz_CmbOperator = FormMain.AddNewComboBox(Arz_GrpOperator, 'Arz_CmbOperator'); Arz_CmbOperator.Align = alClient; Arz_CmbOperator.Margins.Left = 10; Arz_CmbOperator.Margins.Right = 10; Arz_CmbOperator.Margins.Bottom = 7;

  // 14. Yeni Operatör Ekleme
  Arz_GrpOperatorBilgisi = FormMain.AddNewProPanel(PnlHeaderForm, 'Arz_GrpOperatorBilgisi'); Arz_GrpOperatorBilgisi.Align = alTop; Arz_GrpOperatorBilgisi.Height = 58; Arz_GrpOperatorBilgisi.Margins.Top = 6; StyleInputPanel(Arz_GrpOperatorBilgisi);
  Arz_LblOperatorBilgisi = FormMain.AddNewProLabel(Arz_GrpOperatorBilgisi, 'Arz_LblOperatorBilgisi', 'Y. Operator (Ad Soyad) ve Grubu:'); Arz_LblOperatorBilgisi.Align = alTop; Arz_LblOperatorBilgisi.Height = 18; Arz_LblOperatorBilgisi.Margins.Left = 10; Arz_LblOperatorBilgisi.Margins.Top = 6; Arz_LblOperatorBilgisi.Margins.Bottom = 3; StyleInputLabel(Arz_LblOperatorBilgisi);
  BtnOperatorKaydet = FormMain.AddNewProButton(Arz_GrpOperatorBilgisi, 'BtnOperatorKaydet', 'Kaydet'); BtnOperatorKaydet.Align = alRight; BtnOperatorKaydet.Width = 80; BtnOperatorKaydet.Margins.Right = 10; BtnOperatorKaydet.Margins.Bottom = 7; StyleActionButton(BtnOperatorKaydet); FormMain.AddNewEvent(BtnOperatorKaydet, tbeOnClick, 'Arz_BtnOperatorKaydetClick');
  Arz_CmbYeniOperatorGrup = FormMain.AddNewComboBox(Arz_GrpOperatorBilgisi, 'Arz_CmbYeniOperatorGrup'); Arz_CmbYeniOperatorGrup.Align = alRight; Arz_CmbYeniOperatorGrup.Width = 95; Arz_CmbYeniOperatorGrup.Margins.Right = 6; Arz_CmbYeniOperatorGrup.Margins.Bottom = 7; Arz_CmbYeniOperatorGrup.AddItem('A Grubu', 'A'); Arz_CmbYeniOperatorGrup.AddItem('B Grubu', 'B'); Arz_CmbYeniOperatorGrup.AddItem('C Grubu', 'C');
  Arz_EdtOperatorBilgisi = FormMain.AddNewProEdit(Arz_GrpOperatorBilgisi, 'Arz_EdtOperatorBilgisi', ''); Arz_EdtOperatorBilgisi.Align = alClient; Arz_EdtOperatorBilgisi.Margins.Left = 10; Arz_EdtOperatorBilgisi.Margins.Right = 6; Arz_EdtOperatorBilgisi.Margins.Bottom = 7; StyleInputEdit(Arz_EdtOperatorBilgisi); BindInputFocus(Arz_EdtOperatorBilgisi);

  // 15. Genel Açıklama
  Arz_GrpAciklama = FormMain.AddNewProPanel(PnlHeaderForm, 'Arz_GrpAciklama'); Arz_GrpAciklama.Align = alTop; Arz_GrpAciklama.Height = 58; Arz_GrpAciklama.Margins.Top = 6; StyleInputPanel(Arz_GrpAciklama);
  Arz_LblAciklama = FormMain.AddNewProLabel(Arz_GrpAciklama, 'Arz_LblAciklama', 'Genel Kayit Aciklamasi:'); Arz_LblAciklama.Align = alTop; Arz_LblAciklama.Height = 18; Arz_LblAciklama.Margins.Left = 10; Arz_LblAciklama.Margins.Top = 6; Arz_LblAciklama.Margins.Bottom = 3; StyleInputLabel(Arz_LblAciklama);
  Arz_EdtAciklama = FormMain.AddNewProEdit(Arz_GrpAciklama, 'Arz_EdtAciklama', ''); Arz_EdtAciklama.Align = alClient; Arz_EdtAciklama.Margins.Left = 10; Arz_EdtAciklama.Margins.Right = 10; Arz_EdtAciklama.Margins.Bottom = 7; StyleInputEdit(Arz_EdtAciklama); BindInputFocus(Arz_EdtAciklama);

  // 16. Bakım İhmal Notu (Arızalara Özel)
  Arz_GrpBakimIhmal = FormMain.AddNewProPanel(PnlHeaderForm, 'Arz_GrpBakimIhmal'); Arz_GrpBakimIhmal.Align = alTop; Arz_GrpBakimIhmal.Height = 100; Arz_GrpBakimIhmal.Margins.Top = 15; StyleSurface(Arz_GrpBakimIhmal); 
  Arz_LblBakimIhmal = FormMain.AddNewProLabel(Arz_GrpBakimIhmal, 'Arz_LblBakimIhmal', ' Neden Bakim Yapilmadi? (Zorunlu)'); Arz_LblBakimIhmal.Align = alTop; Arz_LblBakimIhmal.Height = 25; StyleSectionTitle(Arz_LblBakimIhmal); 
  Arz_MemBakimIhmal = FormMain.AddNewMemo(Arz_GrpBakimIhmal, 'Arz_MemBakimIhmal', ''); Arz_MemBakimIhmal.Align = alClient; Arz_MemBakimIhmal.Margins.Left = 8; Arz_MemBakimIhmal.Margins.Right = 8; Arz_MemBakimIhmal.Margins.Bottom = 8; Arz_MemBakimIhmal.Margins.Top = 6;

  // --- LİSTE EKRANI ---
  PnlMiddleGrid = FormMain.AddNewProPanel(ScrollForm, 'PnlMiddleGrid');
  PnlMiddleGrid.Align = alTop; PnlMiddleGrid.Height = 250; PnlMiddleGrid.Margins.Top = 12; PnlMiddleGrid.Margins.Left = 8; PnlMiddleGrid.Margins.Right = 8; StyleSurface(PnlMiddleGrid);

  LblGridTitle = FormMain.AddNewProLabel(PnlMiddleGrid, 'LblGridTitle', 'Kayitli Arizalar Listesi');
  LblGridTitle.Align = alTop; LblGridTitle.Height = 30; LblGridTitle.Margins.Left = 8; LblGridTitle.Margins.Right = 8; LblGridTitle.Margins.Top = 6; StyleSectionTitle(LblGridTitle);

  Arz_ListAriza = FormMain.AddNewProListView(PnlMiddleGrid, 'Arz_ListAriza'); 
  Arz_ListAriza.Align = alClient; Arz_ListAriza.Margins.Top = 6; Arz_ListAriza.Margins.Bottom = 8; Arz_ListAriza.Margins.Left = 10; Arz_ListAriza.Margins.Right = 10;
  Arz_ListAriza.ListType = 'vertical';
  Arz_ListAriza.clProSettings.ViewType = lvIcon; 
  Arz_ListAriza.clProSettings.ColCount = 1; 
  Arz_ListAriza.clProSettings.ItemHeight = 70; 
  Arz_ListAriza.clProSettings.ItemSpace = 6;
  Arz_ListAriza.clProSettings.BorderWidth = 0;
  Arz_ListAriza.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#F3F4F6');
  Arz_ListAriza.SetclProSettings(Arz_ListAriza.clProSettings);
  
  FormMain.AddNewEvent(Arz_ListAriza, tbeOnItemClick, 'Arz_ListedenSec');

  Arz_Zone = FormMain.AddNewProListViewDesignerPanel(Arz_ListAriza, 'Arz_Zone');
  Arz_Zone.Align = alTop; 
  Arz_Zone.Height = 70; 
  Arz_Zone.Width = FormMain.clWidth; 
  Arz_Zone.clProSettings.BackgroundColor = clAlphaColor.clWhite;
  Arz_Zone.clProSettings.BorderColor = clAlphaColor.clHexToColor('#D1D5DB');
  Arz_Zone.clProSettings.BorderWidth = 1; Arz_Zone.clProSettings.IsRound = True; Arz_Zone.clProSettings.RoundHeight = 6;
  Arz_Zone.SetclProSettings(Arz_Zone.clProSettings);

  Arz_LblMain = FormMain.AddNewProLabel(Arz_Zone, 'MAIN_TEXT', ''); 
  Arz_LblMain.Align = alTop; Arz_LblMain.Height = 30; Arz_LblMain.Margins.Top = 8; Arz_LblMain.Margins.Left = 12; Arz_LblMain.Margins.Right = 12;
  Arz_LblMain.clProSettings.FontColor = clAlphaColor.clHexToColor('#111827'); Arz_LblMain.clProSettings.FontSize = 14; Arz_LblMain.clProSettings.TextSettings.Font.Style = [fsBold]; Arz_LblMain.SetclProSettings(Arz_LblMain.clProSettings);
  
  Arz_LblSub = FormMain.AddNewProLabel(Arz_Zone, 'SUB_TEXT', ''); 
  Arz_LblSub.Align = alTop; Arz_LblSub.Height = 22; Arz_LblSub.Margins.Left = 12; Arz_LblSub.Margins.Right = 12;
  Arz_LblSub.clProSettings.FontColor = clAlphaColor.clHexToColor('#4B5563'); Arz_LblSub.clProSettings.FontSize = 12; Arz_LblSub.SetclProSettings(Arz_LblSub.clProSettings);

  Arz_Zone.AddPanelObject(Arz_LblMain, clCaption);
  Arz_Zone.AddPanelObject(Arz_LblSub, clText);
  Arz_ListAriza.SetDesignerPanel(Arz_Zone);


  // =================================================================
  // --- NİHAİ VE TEMİZ ÇÖZÜM: RESİM ÇERÇEVESİ DOĞRUDAN FORMA EKLENDİ ---
  // =================================================================
  
  LblPhotoTitle = FormMain.AddNewProLabel(ScrollForm, 'LblPhotoTitle', 'Ariza Fotografi (Gorsel Kanit)');
  LblPhotoTitle.Align = alTop; LblPhotoTitle.Height = 30; LblPhotoTitle.Margins.Left = 8; LblPhotoTitle.Margins.Right = 8; LblPhotoTitle.Margins.Top = 15;
  StyleSectionTitle(LblPhotoTitle);

  // ÇERÇEVE (TClProImage) - Çalışan 2. koddaki gorusmeResimImg'in birebir aynısı
  Arz_ImgPhotoFrame = FormMain.AddNewProImage(ScrollForm, 'Arz_ImgPhotoFrame');
  Arz_ImgPhotoFrame.Align = alTop; 
  Arz_ImgPhotoFrame.Height = 240; // Çalışan koddaki gibi geniş bir sabit alan (GorselYukseklik = 240)
  Arz_ImgPhotoFrame.Margins.Top = 10;
  Arz_ImgPhotoFrame.Margins.Left = 16;
  Arz_ImgPhotoFrame.Margins.Right = 16;
  Arz_ImgPhotoFrame.clProSettings.BorderColor = clAlphaColor.clHexToColor('#2563eb');
  Arz_ImgPhotoFrame.clProSettings.BorderWidth = 2;
  Arz_ImgPhotoFrame.clProSettings.IsRound = True;
  Arz_ImgPhotoFrame.clProSettings.RoundHeight = 8;
  Arz_ImgPhotoFrame.clProSettings.RoundWidth = 8;
  Arz_ImgPhotoFrame.SetclProSettings(Arz_ImgPhotoFrame.clProSettings);

  // ASIL RESİM NESNESİ (TclImage) - Çalışan koddaki CameraImg'in birebir aynısı
  // Çerçevenin içini (alClient ile) donma veya kaybolma olmadan dolduracak.
  Arz_ImgPhoto = FormMain.AddNewImage(Arz_ImgPhotoFrame, 'Arz_ImgPhoto');
  Arz_ImgPhoto.Align = alClient; 

  BtnResimCek = FormMain.AddNewProButton(ScrollForm, 'BtnResimCek', 'Kamera / Galeri Ac');
  BtnResimCek.Align = alTop; 
  BtnResimCek.Height = 46; 
  BtnResimCek.Margins.Left = 16; 
  BtnResimCek.Margins.Right = 16; 
  BtnResimCek.Margins.Top = 10;
  BtnResimCek.Margins.Bottom = 20;
  StylePrimaryButton(BtnResimCek);
  FormMain.AddNewEvent(BtnResimCek, tbeOnClick, 'TakePhotoClick');

  // =================================================================

  Arz_SetCurrentDateTime;
  Arz_CmbYeniOperatorGrup.ItemIndex = -1;
  Arz_CmbOperatorGrup.ItemIndex = 0;
  OperatorGrupDegisti;
  Arz_RefreshList;

  FormMain.Run;
} kamera kısmı ilk başata çalışıyor ama ikinci kez olmuyor çalışmıyor 
https://static.cloudflareinsights.com/beacon.min.js/v8c78df7c7c0f484497ecbca7046644da1771523124516" integrity="sha512-8DS7rgIrAmghBFwoOTujcf6D9rXvH8xm8JQ1Ja01h9QX8EzXldiszufYa4IFfKdLUKTTrnSFXLDkUEOTrZQ8Qg==" data-cf-beacon="{"version":"2024.11.0","token":"439455f3e46c40b98dbd42a2f1a954d8","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}" crossorigin="anonymous">
Yukarı Dön
 Yanıt Yaz Yanıt Yaz

Forum Atla Forum İzinleri Açılır Kutu İzle

Forum Software by Web Wiz Forums® version 12.07
Copyright ©2001-2024 Web Wiz Ltd.

Bu Sayfa 0,098 Saniyede Yüklendi.