12 Ağustos 2013 Pazartesi
Text içinde Ara bul Ve Renkli Göster
ARA BUL VURGULA
Text içinde benzer sözcüklerin Tümünü bulup renkli gösterme ile ilgili bir proje
KOD İNDİR
FORM1
Imports System.io Public Class Form1 Inherits System.Windows.Forms.Form Dim TxtOku As StreamReader #Region "Form Designer kodu oluşturulan alan " Public Sub New() MyBase.New() InitializeComponent() End Sub Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean) If disposing Then If Not (components Is Nothing) Then components.Dispose() End If End If MyBase.Dispose(disposing) End Sub Private components As System.ComponentModel.IContainer Friend WithEvents BulCombo As System.Windows.Forms.ComboBox Friend WithEvents SEsSozlerChk As System.Windows.Forms.CheckBox Friend WithEvents BuyKucEslestirChk As System.Windows.Forms.CheckBox Friend WithEvents LblAranan As System.Windows.Forms.Label Friend WithEvents DsyYukleOFD As System.Windows.Forms.OpenFileDialog Friend WithEvents RenkPaneli As System.Windows.Forms.Panel Friend WithEvents RenkDlg As System.Windows.Forms.ColorDialog Friend WithEvents YukleBtn As System.Windows.Forms.Button Friend WithEvents btnRenkVurgula As System.Windows.Forms.Button Friend WithEvents btnSil As System.Windows.Forms.Button Friend WithEvents ScrollAltta As System.Windows.Forms.Button Friend WithEvents ToolTip1 As System.Windows.Forms.ToolTip Friend WithEvents RTBox As ABV.Windows.Forms.RichTextBox
Private Sub InitializeComponent() Me.components = New System.ComponentModel.Container() Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(Form1)) Me.BulCombo = New System.Windows.Forms.ComboBox() Me.SEsSozlerChk = New System.Windows.Forms.CheckBox() Me.BuyKucEslestirChk = New System.Windows.Forms.CheckBox() Me.LblAranan = New System.Windows.Forms.Label() Me.DsyYukleOFD = New System.Windows.Forms.OpenFileDialog() Me.RenkPaneli = New System.Windows.Forms.Panel() Me.RenkDlg = New System.Windows.Forms.ColorDialog() Me.YukleBtn = New System.Windows.Forms.Button() Me.btnRenkVurgula = New System.Windows.Forms.Button() Me.btnSil = New System.Windows.Forms.Button() Me.ScrollAltta = New System.Windows.Forms.Button() Me.ToolTip1 = New System.Windows.Forms.ToolTip(Me.components) Me.RTBox = New ABV.Windows.Forms.RichTextBox() Me.SuspendLayout() ' 'BulCombo ' Me.BulCombo.Anchor = CType(((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Left) _ Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.BulCombo.Location = New System.Drawing.Point(186, 25) Me.BulCombo.Name = "BulCombo" Me.BulCombo.Size = New System.Drawing.Size(135, 21) Me.BulCombo.TabIndex = 19 ' 'SEsSozlerChk ' Me.SEsSozlerChk.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.SEsSozlerChk.FlatStyle = System.Windows.Forms.FlatStyle.System Me.SEsSozlerChk.Location = New System.Drawing.Point(391, 7) Me.SEsSozlerChk.Name = "SEsSozlerChk" Me.SEsSozlerChk.Size = New System.Drawing.Size(166, 18) Me.SEsSozlerChk.TabIndex = 17 Me.SEsSozlerChk.Text = "Büyük küçük harf eşleştir" Me.SEsSozlerChk.TextAlign = System.Drawing.ContentAlignment.TopLeft ' 'BuyKucEslestirChk ' Me.BuyKucEslestirChk.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.BuyKucEslestirChk.FlatStyle = System.Windows.Forms.FlatStyle.System Me.BuyKucEslestirChk.Location = New System.Drawing.Point(391, 29) Me.BuyKucEslestirChk.Name = "BuyKucEslestirChk" Me.BuyKucEslestirChk.Size = New System.Drawing.Size(143, 18) Me.BuyKucEslestirChk.TabIndex = 16 Me.BuyKucEslestirChk.Text = "Sadece eş Sözcükler" Me.BuyKucEslestirChk.TextAlign = System.Drawing.ContentAlignment.TopLeft ' 'LblAranan ' Me.LblAranan.AutoSize = True Me.LblAranan.FlatStyle = System.Windows.Forms.FlatStyle.System Me.LblAranan.Location = New System.Drawing.Point(190, 6) Me.LblAranan.Name = "LblAranan" Me.LblAranan.Size = New System.Drawing.Size(119, 13) Me.LblAranan.TabIndex = 18 Me.LblAranan.Text = "Aranan Sözcüğü Girin :" ' 'DsyYukleOFD ' Me.DsyYukleOFD.Filter = "Text Dosyası (*.txt)|*.txt;*.text|Rich Text Dosyası |*.rtf|Tüm Dosyalar (*.*)|*.*" & _ "" Me.DsyYukleOFD.Title = "Text Dosyası Seç..." ' 'RenkPaneli ' Me.RenkPaneli.Anchor = CType((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.RenkPaneli.BackColor = System.Drawing.Color.LightGreen Me.RenkPaneli.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle Me.RenkPaneli.Cursor = System.Windows.Forms.Cursors.Hand Me.RenkPaneli.Location = New System.Drawing.Point(343, 6) Me.RenkPaneli.Name = "RenkPaneli" Me.RenkPaneli.Size = New System.Drawing.Size(35, 40) Me.RenkPaneli.TabIndex = 23 ' 'RenkDlg ' Me.RenkDlg.Color = System.Drawing.Color.LightGreen ' 'YukleBtn ' Me.YukleBtn.BackColor = System.Drawing.Color.Transparent Me.YukleBtn.BackgroundImage = CType(resources.GetObject("YukleBtn.BackgroundImage"), System.Drawing.Image) Me.YukleBtn.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch Me.YukleBtn.FlatStyle = System.Windows.Forms.FlatStyle.Flat Me.YukleBtn.Location = New System.Drawing.Point(12, 6) Me.YukleBtn.Name = "YukleBtn" Me.YukleBtn.Size = New System.Drawing.Size(40, 40) Me.YukleBtn.TabIndex = 76 Me.YukleBtn.UseVisualStyleBackColor = False ' 'btnRenkVurgula ' Me.btnRenkVurgula.BackColor = System.Drawing.Color.Transparent Me.btnRenkVurgula.BackgroundImage = CType(resources.GetObject("btnRenkVurgula.BackgroundImage"), System.Drawing.Image) Me.btnRenkVurgula.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch Me.btnRenkVurgula.FlatStyle = System.Windows.Forms.FlatStyle.Flat Me.btnRenkVurgula.Location = New System.Drawing.Point(137, 6) Me.btnRenkVurgula.Name = "btnRenkVurgula" Me.btnRenkVurgula.Size = New System.Drawing.Size(40, 40) Me.btnRenkVurgula.TabIndex = 77 Me.btnRenkVurgula.UseVisualStyleBackColor = False ' 'btnSil ' Me.btnSil.BackColor = System.Drawing.Color.Transparent Me.btnSil.BackgroundImage = CType(resources.GetObject("btnSil.BackgroundImage"), System.Drawing.Image) Me.btnSil.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch Me.btnSil.FlatStyle = System.Windows.Forms.FlatStyle.Flat Me.btnSil.Location = New System.Drawing.Point(58, 6) Me.btnSil.Name = "btnSil" Me.btnSil.Size = New System.Drawing.Size(40, 40) Me.btnSil.TabIndex = 79 Me.btnSil.UseVisualStyleBackColor = False ' 'ScrollAltta ' Me.ScrollAltta.AutoSize = True Me.ScrollAltta.BackColor = System.Drawing.Color.Transparent Me.ScrollAltta.BackgroundImage = CType(resources.GetObject("ScrollAltta.BackgroundImage"), System.Drawing.Image) Me.ScrollAltta.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch Me.ScrollAltta.FlatStyle = System.Windows.Forms.FlatStyle.Flat Me.ScrollAltta.Location = New System.Drawing.Point(103, 6) Me.ScrollAltta.Name = "ScrollAltta" Me.ScrollAltta.Size = New System.Drawing.Size(28, 40) Me.ScrollAltta.TabIndex = 80 Me.ScrollAltta.UseVisualStyleBackColor = False ' 'RTBox ' Me.RTBox.Anchor = CType((((System.Windows.Forms.AnchorStyles.Top Or System.Windows.Forms.AnchorStyles.Bottom) _ Or System.Windows.Forms.AnchorStyles.Left) _ Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) Me.RTBox.Font = New System.Drawing.Font("Microsoft Sans Serif", 10.0!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(162, Byte)) Me.RTBox.HideSelection = False Me.RTBox.Location = New System.Drawing.Point(7, 53) Me.RTBox.Name = "RTBox" Me.RTBox.owerloads = System.Drawing.Color.Black Me.RTBox.Size = New System.Drawing.Size(587, 389) Me.RTBox.TabIndex = 25 Me.RTBox.Text = resources.GetString("RTBox.Text") ' 'Form1 ' Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13) Me.BackColor = System.Drawing.SystemColors.GradientInactiveCaption Me.ClientSize = New System.Drawing.Size(601, 449) Me.Controls.Add(Me.BuyKucEslestirChk) Me.Controls.Add(Me.RenkPaneli) Me.Controls.Add(Me.SEsSozlerChk) Me.Controls.Add(Me.LblAranan) Me.Controls.Add(Me.ScrollAltta) Me.Controls.Add(Me.BulCombo) Me.Controls.Add(Me.btnSil) Me.Controls.Add(Me.btnRenkVurgula) Me.Controls.Add(Me.YukleBtn) Me.Controls.Add(Me.RTBox) Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon) Me.MinimumSize = New System.Drawing.Size(548, 487) Me.Name = "Form1" Me.SizeGripStyle = System.Windows.Forms.SizeGripStyle.Show Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen Me.Text = "Ara Bul Vurgula" Me.ResumeLayout(False) Me.PerformLayout() End Sub #End Region Private Sub Form1_Load(sender As Object, e As System.EventArgs) Handles Me.Load ToolTip1.SetToolTip(YukleBtn, " Dosya Yükleme") ToolTip1.SetToolTip(btnSil, " Secili kısımları sil (Sağ fare tuşuna tıkla)") ToolTip1.SetToolTip(btnRenkVurgula, " Metne Girilen Sözcükleri Bul ve Renkli Göster ") ToolTip1.SetToolTip(BulCombo, " Aranacak sözcük girilir veya" & vbCrLf & "metinden seçildiği an buaraya eklenir") ToolTip1.SetToolTip(RenkPaneli, " Bulunan sözcükler buradan ayarlanan renkle gösterilir ") ToolTip1.SetToolTip(ScrollAltta, " Scroll çubuğunu aşağıya kaydır ") End Sub Private Sub YukleBtn_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles YukleBtn.Click Try If Me.DsyYukleOFD.ShowDialog(Me) = DialogResult.OK Then 'Me.RTBox.LoadFile(Me.DsyYukleOFD.FileName, RichTextBoxStreamType.PlainText) Dim uzanti As String uzanti = System.IO.Path.GetExtension(DsyYukleOFD.FileName) uzanti = uzanti.ToUpper() Select Case uzanti Case ".RTF" RTBox.LoadFile(DsyYukleOFD.FileName, RichTextBoxStreamType.RichText) 'UnicodePlainText Case ".TXT", ".HTM" RTBox.Clear() TxtOku = New IO.StreamReader(DsyYukleOFD.FileName, System.Text.Encoding.Default) RTBox.Text = TxtOku.ReadToEnd TxtOku.Close() TxtOku = Nothing RTBox.Focus() RTBox.SelectionStart = 0 RTBox.SelectionLength = 0 Case Else Try System.Diagnostics.Process.Start(DsyYukleOFD.FileName) Catch ex As Exception MessageBox.Show(uzanti & " 'Uzantılı uygulama Bulunamadı.", "RTB - Hata", MessageBoxButtons.OK, MessageBoxIcon.Error) End Try Exit Sub End Select End If Catch ex As Exception End Try End Sub Private Sub btnRenkVurgula_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnRenkVurgula.Click Me.RTBox.VurguRengi(Me.BulCombo.Text, Me.RenkPaneli.BackColor, Me.SEsSozlerChk.Checked, Me.BuyKucEslestirChk.Checked) RTBox.Focus() End Sub Private Sub BulCombo_LostFocus(sender As Object, e As System.EventArgs) Handles BulCombo.LostFocus If Me.BulCombo.Text = Nothing Then Exit Sub Me.BulCombo.Items.Add(Me.BulCombo.Text) End Sub Private Sub RenkPaneli_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles RenkPaneli.Click Me.RenkDlg.Color = Me.RenkPaneli.BackColor If Me.RenkDlg.ShowDialog(Me) = DialogResult.OK Then Me.RenkPaneli.BackColor = Me.RenkDlg.Color End If End Sub Private Sub btnSil_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSil.Click Me.RTBox.ClearBackColor(True) End Sub Private Sub ScrollAltta_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ScrollAltta.Click Me.RTBox.ScrollToBottom() End Sub Private Sub RTBox_SelectionChanged(sender As System.Object, e As System.EventArgs) Handles RTBox.SelectionChanged Me.BulCombo.Text = Me.RTBox.SelectedText End Sub Private Sub BulCombo_KeyDown(sender As System.Object, e As System.Windows.Forms.KeyEventArgs) Handles BulCombo.KeyDown If e.KeyCode = Keys.Enter Then btnRenkVurgula.PerformClick() End If End Sub Private Sub RTBox_MouseDown(sender As System.Object, e As System.Windows.Forms.MouseEventArgs) Handles RTBox.MouseDown If e.Button = Windows.Forms.MouseButtons.Right Then Me.RTBox.ClearBackColor(True) End If End Sub End Class
CLASS LİBRARY
Imports System.Runtime.InteropServices Namespace Windows.Forms
_ Public Class RichTextBox Inherits System.Windows.Forms.RichTextBox #Region " ÖZELLİKLER :FON RENGİ.."
Private Structure CharFormat2 Public BoyutCb As Int32 Public dwMaskesi As Int32 Public dwEfekti As Int32 Public BoyY As Int32 Public DengeY As Int32 Public TxtRengi As Int32 Public KarakterRengi As Byte Public AlanB As Byte
Public szFaceName As String Public DegerB As Int16 Public AralikB As Int16 Public ArkaFonRnk As Int32 Public IDsc As Int32 Public dwRezerv As Int32 Public Stil As Int16 Public CekirdekW As Int16 Public AltSatirTipi As Byte Public Animasyon As Byte Public RevizeEden As Byte Public YedekRz As Byte End Structure Public Const LF_FACESIZE = 32 Public Const CFM_BACKCOLOR = &H4000000 Public Const CFE_AUTOBACKCOLOR = CFM_BACKCOLOR Public Const WM_USER = &H400 Public Const EM_SETCHARFORMAT = (WM_USER + 68) Public Const EM_SETBKGNDCOLOR = (WM_USER + 67) Public Const EM_GETCHARFORMAT = (WM_USER + 58) Public Const WM_SETTEXT = &HC Public Const SCF_SELECTION = &H1& Private Overloads Declare Auto Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hWnd As IntPtr, ByVal Msg As Integer, ByVal wParam As Integer, ByRef lParam As CharFormat2) As Boolean Public Property owerloads() As Color Get Dim HWND As IntPtr = Me.Handle Dim Format As New CharFormat2 Format.dwMaskesi = CFM_BACKCOLOR Format.BoyutCb = Marshal.SizeOf(Format) SendMessage(Me.Handle, EM_GETCHARFORMAT, SCF_SELECTION, Format) Return ColorTranslator.FromOle(Format.ArkaFonRnk) End Get Set(ByVal Value As Color) Dim HWND As IntPtr = Me.Handle Dim Format As New CharFormat2 Format.ArkaFonRnk = ColorTranslator.ToOle(Value) Format.dwMaskesi = CFM_BACKCOLOR Format.BoyutCb = Marshal.SizeOf(Format) SendMessage(Me.Handle, EM_SETCHARFORMAT, SCF_SELECTION, Format) End Set End Property #End Region #Region " YORDAM: ARKAFON SİL.." #Region " SCROLL BAR TİPİ.." Private Enum ScrollBarTypes SB_HORZ = 0 SB_VERT = 1 SB_CTL = 2 SB_BOTH = 3 End Enum #End Region #Region " SCROLBAR TİP BİLGİSİ.." Private Enum ScrollBarInfoFlags SIF_RANGE = &H1 SIF_PAGE = &H2 SIF_POS = &H4 SIF_DISABLENOSCROLL = &H8 SIF_TRACKPOS = &H10 SIF_ALL = (SIF_RANGE Or SIF_PAGE Or SIF_POS Or SIF_TRACKPOS) End Enum #End Region Public Sub ClearBackColor(Optional ByVal TumunuSil As Boolean = True) Dim HWND As IntPtr = Me.Handle LockWindowUpdate(Me.Handle) Me.SuspendLayout() Dim DikeyKaydirma As Integer = Me.GetScrollBarPos(Me.Handle, ScrollBarTypes.SB_VERT) Dim YatayKaydirma As Integer = Me.GetScrollBarPos(Me.Handle, ScrollBarTypes.SB_HORZ) Dim SecimBaslangici As Integer = Me.SelectionStart Dim SecimUzunlugu As Integer = Me.SelectionLength If TumunuSil Then Me.SelectAll() Dim Format As New CharFormat2 Format.ArkaFonRnk = -1 Format.dwMaskesi = CFM_BACKCOLOR Format.dwEfekti = CFE_AUTOBACKCOLOR Format.BoyutCb = Marshal.SizeOf(Format) SendMessage(Me.Handle, EM_SETCHARFORMAT, SCF_SELECTION, Format) Me.SelectionStart = SecimBaslangici Me.SelectionLength = SecimUzunlugu SendMessage(Me.Handle, EMFlags.EM_SETSCROLLPOS, 0, New RichTextBox.POINT(YatayKaydirma, DikeyKaydirma)) Me.ResumeLayout() LockWindowUpdate(IntPtr.Zero) End Sub
Private Structure SCROLLINFO Public BoyutCb As Integer Public fMask As ScrollBarInfoFlags Public nEnAz As Integer Public nEnCok As Integer Public nSayfa As Integer Public nPozisyon As Integer Public nIzPozisyonu As Integer End Structure Private Declare Function GetScrollInfo Lib "User32" _ (ByVal hWnd As IntPtr, ByVal fnBar As ScrollBarTypes, ByRef lpsi As SCROLLINFO) As Boolean Private Function GetScrollBarPos(ByVal hWnd As IntPtr, ByVal BarType As ScrollBarTypes) As Integer Dim INFO As SCROLLINFO INFO.fMask = ScrollBarInfoFlags.SIF_POS INFO.BoyutCb = Marshal.SizeOf(INFO) GetScrollInfo(hWnd, BarType, INFO) Return INFO.nPozisyon End Function #End Region #Region " YORDAM : PARLAKLIK.." Private Declare Function LockWindowUpdate Lib "user32.dll" (ByVal hWndLock As IntPtr) As Boolean Public Sub VurguRengi(ByVal ArananSoz As String, ByVal VurguRengi As Color, ByVal EsSozcuk As Boolean, ByVal BkHSozcuk As Boolean) LockWindowUpdate(Me.Handle) Me.SuspendLayout() Dim DikeyKaydirma As Integer = Me.GetScrollBarPos(Me.Handle, ScrollBarTypes.SB_VERT) Dim YatayKaydirma As Integer = Me.GetScrollBarPos(Me.Handle, ScrollBarTypes.SB_HORZ) Dim SecimBaslangici As Integer = Me.SelectionStart Dim SecimUzunlugu As Integer = Me.SelectionLength Dim Baslangictan As Integer = 0 Dim Uzunluk As Integer = ArananSoz.Length Dim Bulunanlar As RichTextBoxFinds 'eş ve benzer sözcükler (büyük Küçük harf seçmez kelimenin eşit olmasına bakar) If EsSozcuk Then Bulunanlar = Bulunanlar Or RichTextBoxFinds.MatchCase 'Arananın Büyük ve Küçük harfleri benzerse Bulur If BkHSozcuk Then Bulunanlar = Bulunanlar Or RichTextBoxFinds.WholeWord While Me.Find(ArananSoz, Baslangictan, Bulunanlar) > -1 Me.SelectionBackColor = VurguRengi Baslangictan = Me.SelectionStart + Me.SelectionLength End While Me.SelectionStart = SecimBaslangici Me.SelectionLength = SecimUzunlugu SendMessage(Me.Handle, EMFlags.EM_SETSCROLLPOS, 0, New RichTextBox.POINT(YatayKaydirma, DikeyKaydirma)) Me.ResumeLayout() LockWindowUpdate(IntPtr.Zero) End Sub #End Region #Region " YORDAM: SCROLLBAR ALTTA.." #Region " SCROLL FLAG.." Private Enum EMFlags EM_SETSCROLLPOS = &H400 + 222 End Enum #End Region #Region " SCROLLBARFLAG..." Private Enum ScrollBarFlags SBS_HORZ = &H0 SBS_VERT = &H1 SBS_TOPALIGN = &H2 SBS_LEFTALIGN = &H2 SBS_BOTTOMALIGN = &H4 SBS_RIGHTALIGN = &H4 SBS_SIZEBOXTOPLEFTALIGN = &H2 SBS_SIZEBOXBOTTOMRIGHTALIGN = &H4 SBS_SIZEBOX = &H8 SBS_SIZEGRIP = &H10 End Enum #End Region #Region " PLANLAMA : NOKTA..."
Private Class POINT Public x As Integer Public y As Integer Public Sub New() End Sub Public Sub New(ByVal x As Integer, ByVal y As Integer) Me.x = x Me.y = y End Sub End Class #End Region Private Declare Function GetScrollRange Lib "User32" (ByVal hWnd As IntPtr, ByVal nBar As Integer, _ ByRef lpMinPos As Integer, ByRef lpMaxPos As Integer) As Boolean Private Overloads Declare Auto Function SendMessage Lib "user32" Alias "SendMessageA" _ (ByVal hWnd As IntPtr, ByVal msg As Integer, ByVal wParam As Integer, ByVal lParam As RichTextBox.POINT) As IntPtr Public Sub ScrollToBottom() Dim Min, Max As Integer GetScrollRange(Me.Handle, ScrollBarFlags.SBS_VERT, Min, Max) SendMessage(Me.Handle, EMFlags.EM_SETSCROLLPOS, 0, New RichTextBox.POINT(0, Max - Me.Height)) End Sub #End Region End Class End Namespace
Hiç yorum yok:
Yorum Gönder
Sonraki Kayıt
Önceki Kayıt
Ana Sayfa
Kaydol:
Kayıt Yorumları (Atom)
Hiç yorum yok:
Yorum Gönder