Sayfayı Yazdır | Pencereyi Kapat

listedeki elemanlara tıklama

Nereden Yazdırıldığı: Clomosy | Forum
Kategori: Genel Programlama
Forum Adı: Genel İşlemler
Forum Tanımlaması: TRObject dili ile programlama yaparken karşılaşılan genel işlemler
URL: https://forum.clomosy.com.tr/forum_posts.asp?TID=1110
Tarih: 21 Temmuz 2025 Saat 22:02
Program Versiyonu: Web Wiz Forums 12.07 - https://www.webwizforums.com


Konu: listedeki elemanlara tıklama
Mesajı Yazan: goksuselvi
Konu: listedeki elemanlara tıklama
Mesaj Tarihi: 21 Temmuz 2025 Saat 14:39
var
  analizForm: TclForm;
  MainPnl: TCLProPanel;
  ListView1: TClProListView;
  DesignerPanel1: TClProListViewDesignerPanel;
  habitLabel: TClProLabel;
  addBtn: TClProButton;
  Edit1: TClProEdit;
  Qry: TClSQLiteQuery;
void CreateHabitsTable;
{
  try
    Clomosy.DBSQLiteConnect(Clomosy.AppFilesPath + 'DBHabits.db3', '');
Clomosy.DBSQLiteQuery.Sql.Text = 
  'CREATE TABLE IF NOT EXISTS Habits (' +
    'habitId INTEGER PRIMARY KEY AUTOINCREMENT,' +
    'habitName TEXT NOT NULL' +
  ')';
    Clomosy.DBSQLiteQuery.OpenOrExecute;
  except
    ShowMessage('Exception class: ' + LastExceptionClassName + ' Exception Message: ' + LastExceptionMessage);
    }
}


void AddHabit;
{
  try
    Clomosy.DBSQLiteQuery.Sql.Text = 
      'INSERT INTO Habits(habitName) VALUES (' + QuotedStr(Edit1.Text) + ')';
    Clomosy.DBSQLiteQuery.OpenOrExecute;
    ShowMessage('Alışkanlık eklendi: ' + Edit1.Text);
    Edit1.Text = ''; // inputu temizle

  except
  ShowMessage('Exception class: ' + LastExceptionClassName + ' Exception Message: ' + LastExceptionMessage);
  }
}




void LoadHabitsToListView;
{

  try
    Clomosy.DBSQLiteConnect(Clomosy.AppFilesPath + 'DBHabits.db3', '');
    Qry = Clomosy.DBSQLiteQueryWith('SELECT habitId as RECORD_GUID, habitName as MAIN_TEXT FROM Habits');
    Qry.OpenOrExecute;
    
    ListView1.clLoadProListViewDataFromDataset(Qry);
  
  except
    ShowMessage('Yükleme hatası: ' + LastExceptionMessage);
    }
}


void CreateListView;
{
  ListView1 = analizForm.AddNewProListView(MainPnl, 'ListView1');
  ListView1.Align = alClient;
  ListView1.Margins.Bottom = 20;
  ListView1.Margins.Top = 20;
  ListView1.Margins.Right = 20;
  ListView1.Margins.Left = 20;
  ListView1.clProSettings.ViewType = lvIcon;
  ListView1.clProSettings.ColCount = 1;
  ListView1.clProSettings.ItemHeight = 100;
  ListView1.clProSettings.ItemSpace = 10;
  ListView1.clProSettings.RoundHeight = 5;
  ListView1.clProSettings.RoundWidth = 5;
  ListView1.SetclProSettings(ListView1.clProSettings);
}

void CreateDesignerPanel;
{
  DesignerPanel1 = analizForm.AddNewProListViewDesignerPanel(ListView1, 'DesignerPanel1');
  DesignerPanel1.Height = 100;
  DesignerPanel1.Width = 150;
  DesignerPanel1.clProSettings.BackgroundColor = clAlphaColor.clHexToColor('#B3FCE5');
  DesignerPanel1.clProSettings.BorderColor = clAlphaColor.clHexToColor('#16FF8C');
  DesignerPanel1.clProSettings.BorderWidth = 2;
  DesignerPanel1.clProSettings.RoundHeight = 20;
  DesignerPanel1.clProSettings.RoundWidth = 20;
  DesignerPanel1.SetclProSettings(DesignerPanel1.clProSettings);

  ListView1.SetDesignerPanel(DesignerPanel1);

  habitLabel = analizForm.AddNewProLabel(DesignerPanel1, 'MAIN_TEXT', '-');
  habitLabel.Align = alClient;
  habitLabel.clProSettings.FontSize = 16;
  habitLabel.Margins.Top = 10;
  habitLabel.Margins.Left = 10;
  DesignerPanel1.AddPanelObject(habitLabel, clText);
}



void OnAddBtnClick;
{
  AddHabit;
}

{
  analizForm = TclForm.Create(Self);

  MainPnl = analizForm.AddNewProPanel(analizForm, 'MainPnl');
  MainPnl.Align = alClient;
  MainPnl.clProSettings.IsTransparent = False;
  MainPnl.SetclProSettings(MainPnl.clProSettings);


  Edit1 = analizForm.AddNewProEdit(MainPnl, 'Edit1', '');
  Edit1.Align = alTop;
  Edit1.Height = 50;
  Edit1.Margins.Top = 20;
  Edit1.Margins.Left = 20;
  Edit1.Margins.Right = 20;
  Edit1.clProSettings.BackGroundColor = clAlphaColor.clHexToColor('#CDB4DB'); 
  Edit1.clProSettings.IsTransparent = True;
  Edit1.clProSettings.IsFill = False;
  Edit1.clProSettings.IsRound = True;
  Edit1.clProSettings.RoundHeight = 20;
  Edit1.clProSettings.RoundWidth = 20;
  Edit1.clProSettings.FontSize = 16;
  Edit1.clProSettings.FontColor = clAlphaColor.clHexToColor('#ffffff');
  Edit1.clProSettings.BorderColor = clAlphaColor.clHexToColor('#ffffff');
  Edit1.SetclProSettings(Edit1.clProSettings);

  addBtn = analizForm.AddNewProButton(MainPnl, 'addBtn', 'Ekle');
  addBtn.Align = alBottom;
  addBtn.Height = 50;
  addBtn.clProSettings.IsRound = True;
  addBtn.SetclProSettings(addBtn.clProSettings);
  analizForm.AddNewEvent(addBtn, tbeOnClick, 'OnAddBtnClick');

  CreateListView;
  CreateDesignerPanel;
  CreateHabitsTable;
  LoadHabitsToListView;

  analizForm.Run;
}    ilk sorunum listedeki alışkanlıklara bastığımda yeni bir panel ya da unitin açılmasını istiyorum ama yapamadım ikinci sorum ayrıca eklediğim alışkanlıkları nasıl silicem cevaplarsanız sevinirim teşekkür ederim
< id="BFI_" style="width: 1px; height: 1px; display: none;">



Cevaplar:
Mesajı Yazan: Sudesigirci
Mesaj Tarihi: 21 Temmuz 2025 Saat 15:28
Merhaba Göksu,
ayrı bir unite geçmek için aşağıdaki gibi bir fonksiyon kullanabilirsin
uniite gitmek için bir buton oluştur
void unitegit;
{
Clomosy.RunUnit('unitismi');
}

oluşturduğun butonun aşağısında

form.addnewevent(buton,tbeonclick,'unitegit'); 
diyerek yeni bir unit açabilirisn listeleme işlemlerini oluşturduğun unit içinde yapabilirsin 
iyi çalışmalar dilerim



Sayfayı Yazdır | Pencereyi Kapat

Forum Software by Web Wiz Forums® version 12.07 - https://www.webwizforums.com
Copyright ©2001-2024 Web Wiz Ltd. - https://www.webwiz.net