PDA

View Full Version : سوال: چگونه قسمتی از متن یک Label را با ماوس انتخاب کنیم و سپس آن را به Clipboard کپی کنیم ؟



gilsoft
جمعه 06 تیر 1393, 18:00 عصر
سلام دوستان

تصویری را که مشاهده می‌کنید هر سه سطر آن از نوع Label‌ می‌باشد : ( یعنی 6تا Label داره ..3تا چپ و 3تا راست )

120535

چجوری می‌تونم قسمتی از متن رو بوسیله‌ی ماوس انتخاب کنم ؟ :متفکر:

اینو میدونم که : برای کپی کردن متن انتخاب شده باید از ContextMenuStrip استفاده کنم ... :لبخندساده:

فقط در قسمت انتخاب متن بوسیله ماوس مشکل دارم ... :ناراحت:

در ضمن این برام مهمه که BackColor متن بصورت Color.Transparent باشد ! و کنترل بدون حاشیه باشد. « یعنی یه جورایی اومدم از Textbox بصورت Disable‌ استفاده کنم .. که نشد ! »

ممنون میشم یه راهنمایی بفرمائید :بوس:

younes221
شنبه 07 تیر 1393, 19:50 عصر
سلام ، خیلی بعید می دونم شما بتونید راحت این کار رو با کنترل Label انجام بدین . خیلی راحت میشه همین رفتار رو با کنترل TextBox انجام بدین :


private void Form1_Load(object sender, EventArgs e) {
this.textBox1.Text = "Something goes here....";
this.textBox1.BorderStyle = BorderStyle.None;
this.textBox1.BackColor = this.BackColor;
this.textBox1.ReadOnly = true;
this.textBox1.TabStop = false;
}

gilsoft
یک شنبه 08 تیر 1393, 09:59 صبح
سلام ، خیلی بعید می دونم شما بتونید راحت این کار رو با کنترل Label انجام بدین . خیلی راحت میشه همین رفتار رو با کنترل TextBox انجام بدین :
Private Sub Form1_Load(sender As Object, e As EventArgs)
Me.textBox1.Text = "Something goes here...."
Me.textBox1.BorderStyle = BorderStyle.None
Me.textBox1.BackColor = Me.BackColor
Me.textBox1.[ReadOnly] = True
Me.textBox1.TabStop = False End Sub

سلام دوست عزیز

متاسفانه حواسم نبود که تو پست اول قید کنم که : من از کامپوننت DevComponents.DotNetBar استفاده می کنم

متاسفانه هرکاری میکنم نمی‌تونم BackColor فرم رو با کنترل TextBox ویا TexBoxX سِت Set کنم :متفکر:

120594

این عدد 247; 217; 194 که تو کادر عکس می بینید رو نمی دونم از کجا میاد ! :متفکر:

دوستان لطفا راهنمایی کنید ... :افسرده:

محمد آشتیانی
یک شنبه 08 تیر 1393, 16:50 عصر
سلام
فکر میکنم مقدار رنگ زمینه کنترل TextBox نمیتونه Transparent باشه ، اما چرا رنگ زمینه تکست باکس رو مثل رنگ زمینه فرم نمیکنید؟

shahryari
یک شنبه 08 تیر 1393, 17:18 عصر
از تکست باکس استفاده کن و برای مخفی کردن کرسر چشمک زن تکست باکس از تابع زیر استفاده کن
[DllImport("User32.dll")]
static extern Boolean HideCaret(IntPtr hWnd);

فقط کافی هندل تکس باکس مورد نظر رو در آرگومان ورودی بهش بدی (ترجیحا رویداد موس آپ )

gilsoft
دوشنبه 09 تیر 1393, 06:47 صبح
سلام
فکر میکنم مقدار رنگ زمینه کنترل TextBox نمیتونه Transparent باشه ، اما چرا رنگ زمینه تکست باکس رو مثل رنگ زمینه فرم نمیکنید؟

سلام دوست خوب من

اون عددی رو که تو خاصیت BackColor مشاهده می‌فرمائید ... رو هیچ جا نمی‌تونم پیدا کنم

اگه از کد زیر هم استفاده کنم پس زمینه‌ي کنترل به رنگ خاکستری درمی‌آد ! (یعنی در واقع پیش‌فرض سیستم رو برمی‌گردونه) :افسرده:
ٰTextBoxX1.Backcolor = Me.BackColor

در واقع اگر اون 3تا عدد رو بصورت دستی ( مانند کد زیر ) وارد کنم همه‌چی حله :لبخندساده:
TextBoxX1.BackColor = Color.FromArgb(194, 217, 247)

من فقط میخوام بدونم که : اون 3تا عدد از کجا میاد تو خاصیت BackColor فرم می‌شینه ؟! :متفکر:

محمد آشتیانی
دوشنبه 09 تیر 1393, 21:10 عصر
سلام
راستش بنده با DotNetBar کار نکردم ، اما حدس میزنم اون مقدار رنگ مربوط به Theme هست که داره رو کنترل ها ست میشه