پرسش و پاسخ در برنامه نویسی VB.NET

دختر شرقی

کاربر حرفه ای
کاربر ممتاز
با سلام
دوستان عزیز ، هر گونه سوال متفرقه پیرامون برنامه نویسی VB رو در این تاپیک مطرح بفرمایید ...
 
آخرین ویرایش توسط مدیر:

rezazd

عضو جدید
سلام یه سوال داشتم.
چطور میشه در ویژوال بیسیک ، یک متن رو با تصویر الحاق کرد به این صورت که یه برچسب دارم که روی یک جعبه تصویر قرار گرفته میخوام این تصویر رو جوری ذخیره کنم که متن روی برچسب هم با آن ذخیره بشه و وقتی تصویر ذخیره شده را باز میکنم متن برچسب روی تصویر ذخیره شده باشه.:(
ببینید یه داستانی توی ویندوز داریم به اسم GDI تمام این مسایل را ساپورت میکند

برای نوشتن یک متن روی تصویر باید روی Canvas ان تصویر از تابع TextOut استفاده کنید

اینهم نمونه اش به سی
کد:
// Obtain the window's client rectangle
 GetClientRect(hwnd, &r); // THE FIX: by setting the background mode
// to transparent, the region is the text itself // 
SetBkMode(hdc, TRANSPARENT); 
// Bracket begin a path 
BeginPath(hdc); // Send some text out into the world 
TCHAR text[ ] = "Defenestration can be hazardous"; 
TextOut(hdc,r.left,r.top,text, ARRAYSIZE(text)); // Bracket end a path 
EndPath(hdc); // Derive a region from that path 
SelectClipPath(hdc, RGN_AND); // This generates the same result as 
SelectClipPath() // 
SelectClipRgn(hdc, PathToRegion(hdc)); // Fill the region with grayness 
FillRect(hdc, &r, GetStockObject(GRAY_BRUSH));
نمونه به بیسیک دات نت
کد:
Public Sub DrawString()
Dim formGraphics As System.Drawing.Graphics = Me.CreateGraphics()
Dim drawString As String = "Sample Text"
Dim drawFont As New System.Drawing.Font("Arial", 16)
Dim drawBrush As New _
System.Drawing.SolidBrush(System.Drawing.Color.Black)
Dim x As Single = 150.0
Dim y As Single = 50.0
Dim drawFormat As New System.Drawing.StringFormat
formGraphics.DrawString(drawString, drawFont, drawBrush, _
x, y, drawFormat)
drawFont.Dispose()
drawBrush.Dispose()
formGraphics.Dispose()
End Sub
ببخشید نمی دونم چطوری توی این فرم ها میشه راست نویس چپ نویس توام داشت که کد ها بهم نخورد
یکی دیگه
کد:
Private Sub RenderText1(ByVal e As PaintEventArgs)
TextRenderer.DrawText(e.Graphics, "Regular Text", _
Me.Font, New Point(10, 10), SystemColors.ControlText)
End Sub
 
آخرین ویرایش:

abc_ramak

عضو جدید
کاربر ممتاز
ببخشید نمی دونم چطوری توی این فرم ها میشه راست نویس چپ نویس توام داشت که کد ها بهم نخورد
End Sub
می تونین از علامت # استفاده کنین و کد ها رو بین تگ <code> بنویسین
ممنون به خاطر اطلاعات خوبتون، استفاده کردیم :gol:
 

Samira220

عضو جدید
پیغام خطا در هنگام باز کردن دیتابیس در VB.NET

پیغام خطا در هنگام باز کردن دیتابیس در VB.NET

سلاممن به صورت فوري و فوتي احتياج به تكه كدي كه از SQL در VB.NET استفاده مي كنه دارمخودم نوشتم ولي توي خط CON.OPEN خطا مي گيره . چرا ؟
 

abc_ramak

عضو جدید
کاربر ممتاز
احتمالا مسیر فایل پایگاه داده درست نیست
یا اینکه اصلا تعریف نشده
 
آخرین ویرایش:

yasin_d

عضو جدید
کاربر ممتاز
اینکه یک خطا هنگام open کردن connection رخ می ده علت های زیادی می تونه داشته باشه....
ممکن هست به علت نام کاربری و پسورد پایگاه باشه یا server پایگاه رو سیستم run نباشه یا ....

اولا از چه نوع adapter برای اتصال استفاده می کنی . اون رو چک کن...
بعد از طریق enterprise manager خود پایگا هت رو چک کن ...
و .... متن خطایی که میده رو اینجا بزار تا بیشتر کمکت کنیم...
 

ture

عضو جدید
سوال : استفاده از EXCEL در VB

سوال : استفاده از EXCEL در VB

با سلام
من یک OLE COMPONENT اکسل در برنامه ویژوال بیسیک اضافه کرده ام ولی نمی توانم داده های آن را از طریق کد نویسی تغییر دهم .

میخواستم ببینم چطور میتوان داده های یک CELL را از طریق کد نویسی تغییر داد .
 

yasin_d

عضو جدید
کاربر ممتاز
سلام.
من زیاد با ole کار نکردم و معمولا هم کار نمی کنم... چون ole ها بار اضافی به نرم افزار تحمیل می کنند و جلوی پردازش سریع رو می گیرند...

ولی روشی که فکر کنم ساده تر و بهتر باشه و من خودم قبلا استفاده کردم استفاده از ado هست... که به راحتی می تونید هر کاری که روی یک پایگاه داده شبیه به access یا sql انجام می دید روی یک فایل excel هم انجام بدهید...
برای این کار لازم هست که provider کامپوننت ado رو به صورت زیر تنظیم کنید و آدرس فایل اکسل رو بدید:
"Microsoft.Jet.OLEDB.4.0"

البته توضیحات در این رابطه زیاد هست برای مطالعه بیشتر و آشنایی به مقاله شماره 257819 در سایت مایکروسافت مراجعه کنید:
http://support.microsoft.com/kb/257819

اگه سوالی بود من در خدمتم...

اگر کسی از دوستان اطلاعات در مورد ole داشت خوشحال میشم بزاره تا هم دوستمون هم بقیه استفاده کنند
 

ture

عضو جدید
با تشکر از راهنمایی شما .

این مشکل رو تونستم با کد زیر حل کنم :
OLE1.OBJECT.

بطور مثال :

OLE1.OBJECT.WORKSHEETS(1).RANGE("E2") = 100

یه مساله دیگه اینکه اگه از OLE استفاده کنم ،کامپیوتری که از این برنامه من استفاده می کنه باید EXCEL داشته باشه یا نه ؟
 

yasin_d

عضو جدید
کاربر ممتاز
تا جایی که من می دونم آره باید کامپیوتر اجرا کننده هم برنامه رو داشته باشه .... چون این کامپوننت فقط برای لینک دادن هست و اسمش هم همینه Object Linking and Embedding
البته ممکن هست خلافش هم ثابت بشه:D
 
  • Like
واکنش ها: ture

ture

عضو جدید
ادامه سوال ...

ادامه سوال ...

با تشکر از جواب ها و یکی دو سوال دیگه ....

اگه یک setup براش درست کنم و از طریق اون نصب بشه چطور ؟
آیا این setup فایل های مورد نیاز برای excel رو به همراه داره یا نه ؟

(با application setup wizard )
 

samira222

عضو جدید
من براي پايگاه داده ام نام كابر و پسورد ندارم و وقتي استفاده مي كنم قبول نمي كنه
از
oledbconnection
استفاده ميكنم و با
provider
هم مسير بانك رو كامل مشخص مي كنم و پايگاهم رو هم توي
interprise manager
چك كردم . متاسفانه يا خوشبختانه اون هم درسته ؟
اگه منو راهنمايي كنيد كه چطوري پوشه تصوير خطاهام رو براتون بفرستم ممنون مي شم
 

yasin_d

عضو جدید
کاربر ممتاز
متن خطا رو بنویسید یا توی یه سایت مثل tinypic آپ کنید و اینجا لینک بدید
 

yasin_d

عضو جدید
کاربر ممتاز
نه
مسلما یک ole برای کار باید به نرم افزار مقصد لینک بده پس باید اون نرم افزار نصب باشه و فکر نمی کنم با ساختن setup حل بشه....
البته شاید mini application هایی باشند برای این کار ولی من تا حالا ندیدم...
شما بهتره از همون ado استفاده کنی چون در اون صورت احتیاجی به نصب نرم افزار نیست...البته هر طور صلاح می دونی
 

samira222

عضو جدید
من توي سايتي كه گفتين upload كردم اما نمي دونم چطوري بياد اينجا http://www.tinypic.com/pic error errorلينك كنم . لطفا راهنما يي كنيد . نمي دونم اينطوري درسته يا نه ؟
 

yasin_d

عضو جدید
کاربر ممتاز
بعد از اینکه آپ کردی یه لینک html میده اون رو اینجا بزار....
 

samira222

عضو جدید
من دوباره براي لينك كردن رفتم . فقط اميدوارم درست باشه دو تا ادرس داد كه براي محكم كاري هر دو تا رو نوشتم . <a href="http://tinypic.com" target="_blank"><img src="http://i28.tinypic.com/zyg9hh.jpg" border="0" alt="Image and video hosting by TinyPic"></a>
و دومي
 

yasin_d

عضو جدید
کاربر ممتاز
این عکس چیز زیادی رو نشون میده... این چند تا کار رو انجام بده شاید درست شد:

1- به جای استفاده از code برای تعریف پایگاه و اتصالات از حالت visual tools استفاده کن تا تعاریف و به خصوص con string درست ساخته بشه.... در حالت دستی برای تنظیم con string بعضی وقت ها مشکلاتی بوجود میاد...

2- از System.Data.SqlClient به جای System.Data.OleDb استفاده کن....

3- این مدلی کدی که نوشتی ممکن هست مشکل داشته باشه از قطعه کد زیر استفاده کن:
کد:
Dim Query as string = "Select * FROM Customers"
Dim CnStrng As String = "Provider = Microsoft.Jet.OLEDB.4.0; Data Source =C:\Northwind.mdb"
Dim Cn As New OleDb.OleDbConnection(CnStrng)
Dim da As New OleDb.OleDbDataAdapter(Query, Cn)
Dim dt As New DataTable
Cn.Open()
da.Fill(dt)

این راهها رو امتحان کن احتمالا یکیش کار کنه...
 

rezazd

عضو جدید
من توي سايتي كه گفتين upload كردم اما نمي دونم چطوري بياد اينجا http://www.tinypic.com/pic error errorلينك كنم . لطفا راهنما يي كنيد . نمي دونم اينطوري درسته يا نه ؟

عزیزم شما باید در وب کانفیگ این خط را اضافه کنی اگه تحت وب هستی
کد:
[SIZE=2][COLOR=#0000ff]<[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]configuration[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
[SIZE=2][COLOR=#0000ff]<[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]appSettings[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]/>[/COLOR][/SIZE]
[SIZE=2][COLOR=#0000ff]<[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]connectionStrings[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
[SIZE=2][COLOR=#0000ff]<[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]add[/COLOR][/SIZE][SIZE=2][COLOR=#ff0000]name[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2]"My[/SIZE][SIZE=2][COLOR=#0000ff]DataConnectionString[/COLOR][/SIZE][SIZE=2]"[/SIZE][SIZE=2][COLOR=#ff0000]connectionString[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2]"[/SIZE][SIZE=2][COLOR=#0000ff]Data Source=COMPUTER\SQLEXPRESS;Initial Catalog=MYData;Integrated Security=True[/COLOR][/SIZE][SIZE=2]"[/SIZE][SIZE=2][COLOR=#ff0000]providerName[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]=[/COLOR][/SIZE][SIZE=2]"[/SIZE][SIZE=2][COLOR=#0000ff]System.Data.SqlClient[/COLOR][/SIZE][SIZE=2]"[/SIZE][SIZE=2][COLOR=#0000ff]/>[/COLOR][/SIZE]
[SIZE=2][COLOR=#0000ff]</[/COLOR][/SIZE][SIZE=2][COLOR=#a31515]connectionStrings[/COLOR][/SIZE][SIZE=2][COLOR=#0000ff]>[/COLOR][/SIZE]
و در برنامه ویندوزی
کد:
Private Sub OpenSqlConnection() Dim [COLOR=#ffffff]connectionString[/COLOR] As String = GetConnectionString() Using connection As New SqlConnection() connection.[COLOR=#ffffff]ConnectionString[/COLOR] = [COLOR=#ffffff]connectionString[/COLOR] connection.Open() Console.WriteLine("State: {0}", connection.State) Console.WriteLine("[COLOR=#ffffff]ConnectionString[/COLOR]: {0}", _ connection.[COLOR=#ffffff]ConnectionString[/COLOR]) End UsingEnd SubPrivate Function GetConnectionString() As String ' To avoid storing the connection string in your code, ' you can retrieve it from a configuration file. Return "Data Source=MSSQL1;Database=AdventureWorks;" _ & "Integrated Security=true;"End Function/]
برای ساختن رشته کانکشن هم از ویزارد ها استفاده کن

راستی توی عکس دیدم که هارد دیسکت جانداره اگه همون درایوی هست که ویندوز روشه احتمال داره مشکلت از همونجا باشه
 

samira222

عضو جدید
كارهايي كه گفتين انجام دادم . حتي اون بلاك كدها رو هم استفاده كردم ولي دقيقا همون خطا رو مي ده . چي كار كنم ؟ فوقش تا يك هفته ديگه بيشتر وقت ندارم .
اگه مي شه email تون رو به من بدين تا پروژه رو براتون بفرستم شايد اينطوري بهتر بشه فهميد خطا از كجاست ؟. البته اگه امكان داره !!!؟؟
خيلي خيلي متشكرم:smile:
 

mohandes_iman

عضو جدید
سلاممن به صورت فوري و فوتي احتياج به تكه كدي كه از SQL در VB.NET استفاده مي كنه دارمخودم نوشتم ولي توي خط CON.OPEN خطا مي گيره . چرا ؟
سلام
خوبین؟
من دقیقا همین مشکل رو دارم
مشکل از آدرس نیست
نمی دونم از چیه

خوشحالم میکنین اگه باهام تماس بگیرین
imanabbaspour@gmail.com
منتظرم
کد رو هم بدین
 

samira222

عضو جدید
بچه ها تو رو خدا هر كي جوابو مي دونه بگه . من اصلا وقت ندارم هان
منتظرم
 

samira222

عضو جدید
اره بابا از اون هم استفاده كردم . ولي جواب نمي ده
هم از اون و هم از oledb حالا چي كار كنم ؟ :confused:
 

samira222

عضو جدید
يعني بين اين همه مهندس و نخبه و برنامه نويس يكي پيدا نمي شه اين اشكال كوچيك برنامه رو بگيره . خواهشا يكي كمك كنه ! شمارش معكوس براي پروژه من شروع شده
:cry:
 

samira222

عضو جدید
از شما ها كه خبري نشد . من يك كار هايي كردم . حالا اگه مي شه بگين خطا براي چيه ؟؟؟
فقط لطفا زودتر . متشكرم :)
 

aylin_r

عضو جدید
سلام
منم تو کانکشن مشکل دارم منتها دیتا بیسم با sql server هست .مشکل من تو نوشتم connection string هست
.
ممنون می شم کمکم کنید .
 

Similar threads

بالا