/*★ Key Search 前田 稔 ★*/
// CSC CSForm.cs
using System;
using System.Drawing;
using System.Windows.Forms;
using System.IO; // for File, StreamReader
using System.Text; // for Encoding
public class MyForm : Form
{
private Button button1;
private TextBox textBox1;
private RichTextBox richTextBox1;
public MyForm()
{
InitializeComponent();
button1.Hide();
textBox1.Hide();
string file_name = @"C:\DATA\C#\02Windows\06Tool\03RichTextBox\17Search\CSForm.cs";
StreamReader reader = new StreamReader(file_name);
string str;
str = reader.ReadToEnd();
richTextBox1.Text = str;
reader.Close();
}
private void InitializeComponent()
{
this.richTextBox1 = new System.Windows.Forms.RichTextBox();
this.button1 = new System.Windows.Forms.Button();
this.textBox1 = new System.Windows.Forms.TextBox();
this.SuspendLayout();
//
// richTextBox1
//
this.richTextBox1.Location = new System.Drawing.Point(12, 12);
this.richTextBox1.Name = "richTextBox1";
this.richTextBox1.Size = new System.Drawing.Size(551, 409);
this.richTextBox1.TabIndex = 0;
this.richTextBox1.Text = "";
this.richTextBox1.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.richTextBox1_DoubleClick);
this.richTextBox1.MouseDown += new System.Windows.Forms.MouseEventHandler(this.mouse_Click);
//
// button1
//
this.button1.Location = new System.Drawing.Point(46, 73);
this.button1.Name = "button1";
this.button1.Size = new System.Drawing.Size(75, 23);
this.button1.TabIndex = 1;
this.button1.Text = "Search";
this.button1.UseVisualStyleBackColor = true;
this.button1.Click += new System.EventHandler(this.button_Click);
//
// textBox1
//
this.textBox1.Location = new System.Drawing.Point(158, 73);
this.textBox1.Name = "textBox1";
this.textBox1.Size = new System.Drawing.Size(189, 25);
this.textBox1.TabIndex = 2;
this.textBox1.Text = "Text";
//
// MyForm
//
this.ClientSize = new System.Drawing.Size(575, 433);
this.Controls.Add(this.textBox1);
this.Controls.Add(this.button1);
this.Controls.Add(this.richTextBox1);
this.Name = "MyForm";
this.ResumeLayout(false);
this.PerformLayout();
}
// richTextBox でマウスがクリックされたとき
private void mouse_Click(object sender, MouseEventArgs e)
{
MessageBox.Show("マウスがクリックされた");
richTextBox1.Hide();
button1.Show();
textBox1.Show();
}
// ボタンクリックでキーサーチ
private void button_Click(object sender, EventArgs e)
{
string s_key;
s_key = textBox1.Text;
Console.WriteLine("KEY:" + s_key + "\n");
for(int pos = 0; ; )
{
pos = richTextBox1.Find(s_key, pos, RichTextBoxFinds.None);
if (pos < 0) break;
richTextBox1.SelectionColor = Color.DarkMagenta;
pos++;
}
richTextBox1.Select(0, 0);
richTextBox1.Show();
button1.Hide();
textBox1.Hide();
}
// Title Bar に pos から8文字を表示
private void richTextBox1_DoubleClick(object sender, MouseEventArgs e)
{
MessageBox.Show("RichTextBox DoubleClick");
int pos = richTextBox1.SelectionStart;
richTextBox1.Select(pos, 8);
this.Text = richTextBox1.SelectedText;
}
}
class form01
{
public static void Main()
{
MyForm mf = new MyForm();
Application.Run(mf);
}
}
|