UltraVB.Com | vBulletin Destek ve Geliştirme Forumu  

Geri git   UltraVB.Com | vBulletin Destek ve Geliştirme Forumu > Programlama > Yazılım > .Net Framework

.Net Framework Visual Studio.Net Temelini oluşturan .Net Framework hakkındaki akıllarda bulunan soruların cevapları bulabileceginiz önemli bir Türkçe kaynaktır. • NET Framework kütüphanesi • Common Language Runtime • Program örnekleri • Visual Studio .Net Patformu ve geleceği hakkında konular, makaleler, örnek kodlar

Tags:

Cevapla
 
LinkBack Seçenekler Stil

Alt 02-07-2007   #1 (permalink)
Mendoza
 
SaidX - ait Kullanıcı Resmi (Avatar)
 
Üyelik tarihi: Dec 2006
Nerden: Linux
Mesajlar: 474
Rep Gücü: 0
SaidX is an unknown quantity at this point
SaidX - MSN üzeri Mesaj gönder
Word&net - 1

Yalçın Uzun “Office Uygulamalarına .NET’ten Hükmedin – 1” makalesiyle EXCEL’E giriş yaptı şimdi ben de WORD’E nasıl hükmedeceğinizden bahsedeceğim. Bu makale sonunda kendi kendinize ait "WORD" belgesi oluşturabilir, üzerinde değişiklikler yapabilir, değişik formatlar uygulayabilir ve tüm bunları ".doc" veya ".rtf" uzantılı olarak kaydedebilir hale geleceksiniz. Peki, yapacaklarınız bu kadarla mı sınırlı? Kesinlikle bu kadar değil. Yapacaklarınız sadece hayal gücünüzle sınırlı. Size bu makalede WORD nasıl kullanılır anlatmayacağım. Size .NET 2003 ile WORD’E nasıl hükmedeceğiniz hakkında bilgi vereceğim.
Projemize Office Referans Verilmesi:
Projemize başlamadan referans ekleme bölümünden COM sekmesine gelinir. Burada, Office’in hangi uygulaması ile ilgili proje yapmak istiyorsak, onun referansını bulunur. (Word,Excel vs..) Bu makalede Word kullanacağımız için Microsoft Word 11.0 Object Library ‘yi projemize referans veriyoruz.
Başlamadan önce kullanacağımız temel yapı taşlarını biraz inceleyelim:
Application:
Application nesnesi Word uygulamasını temsil eden sınıftır. Uygulamanın ekranda görünüp görünmeyeceğini, kullanıcı etkileşimli olup olmayacağını, kilitli olarak açılıp açılmayacağı gibi özellikler, bu sınıf üzerinden ayarlanır.
Range:
Doküman üzerinde başlangıç ve bitiş noktalarını belirterek seçme işlemi gerçekleştirmenizi sağlar. Şayet başlangıç ve bitiş noktası için verdiğiniz referanslar ayni noktayı işaret ediyorsa cursor işaretlenen alanda kalacaktır.

Hadi projemize başlayalım ve Word’e hükmedelim.
Şimdi .NET 2003 içinde “WORDeHUKMEDIN” adında bir Windows uygulaması açın.
Verilen örnek kodların hata vermeden çalışması için Microsoft.Office.Interop kütüphanesini using(c#) ya da imports(vb) anahtar kelimesiyle projemizin başında belirtmemiz gerekir.
Tüm diğer external objelerde yaptığımız gibi Word obje modelini de projemizde kullanabilmek için deklare etmemiz, yani bir değişkene atamamız gerekiyor. Bunun içinde:
Dim WordApp As New Word.Application
Doküman üzerindeki değişiklikler içinde:
Dim dokuman as Word.Document
Şimdi ilk örnek kodumuzu yazalım;
Private fileName As Object ' Dosya nesnemiz
Private [readOnly] As Object = False 'Dosya salt okunur nesnesi
Private isVisible As Object = True ‘ Dosya görüntülensin mi?
Private missing As Object = System.Reflection.Missing.Value
Dim wordapp As New Word.Application
Dim dokuman As Word.Document

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

fileName = "c:\TEST.doc" ' Word belgemizin yeri
dokuman = wordapp.Documents.Open(fileName, missing, [readOnly], missing, missing, missing, missing, missing, missing, missing, missing, isVisible) ' Varolan Word belgemizi açmamızı sağlar
dokuman.Activate() ' Word belgemizi aktif yapar
wordapp.Visible = True ' Word belgemizin ekranda görüntülenmesini sağlar
dokuman = wordapp.Documents.Add 'yeni doküman oluşturuyoruz.
dokuman.SaveAs("kaydet-test.doc") 'Uygulamamıza bir isim vererek kaydediyoruz.
‘NOT: Eğer doküman daha önce kaydedildiyse SaveAs yerine Save metodunu kullanmanız yeterli olacaktır
End Sub
NOT: Bu yukarıdaki kod sayesinde belirtilen hedefteki Word belgesini editlenebilecek şekilde açtık. Eğer [readOnly]=TRUE olsaydı readonly formatta açılacak ve editlenemeyecekti.

Close Object
Aktif dokümanı kapatmamıza yarayan metoddur.
dokuman.Close([ByRef saveChanges As Object], [ByRef originalFormat As Object], _
[ByRef routeDocument As Object])
Burada kullandigimiz 3 değişik argüman var;
SaveChanges: WDSaveOptions elemanıdır ve üç degeri vardir: wdDoNotSaveChanges, wdPromptToSaveChanges, veya wdSaveChanges
Originalformat: WDOriginalFormat elemanidir ve bunun da seçilebilir üç degeri vardir: wdOriginalDocumentFormat, wdPromptUser, veya wdWordDocument
Routing Slip:sayet yarattiginiz dokümani mail eki olarak kullanmayacaksaniz bu argümani dikkate almayabiliriz.
Quit Object
Close objesinden tek farki close sadece dokümani saklar,quit ise word belgesini kapatir.
Ok Tuslari
WordApp.Selection.MoveLeft([Unit], [Count],[Extent]) 'Sol Ok tusu
WordApp.Selection.MoveRight([Unit], [Count],[Extent]) 'Sağ Ok tusu
WordApp.Selection.MoveUp([Unit], [Count],[Extent]) 'Yukarı tusu
WordApp.Selection.MoveDown([Unit], [Count],[Extent]) 'Aşağı tusu
Extent argümanı yukarıdakinin aynisidir. Unit argümanı için ise WdUnit farklı seçenekler sunmaktadır. MoveLeft ve MoveRight için;
WdCharacter: Count sayısı kadar karakter değiştirir. Default değeridir.
WdWord: Count sayisi kadar kelime değiştirir.
WdSentence: Count sayisi kadar cümle değiştirir.
WdCell: Count sayisi kadar hücre değiştirir. Tablolarda kullanılır.
MoveUp ve MoveDown için ise;
WdLine: Count sayisi kadar satir değiştirir.
WdParagraph: Count sayisi kadar paragraf degistirir.
WdWindow: Count sayisi kadar pencere degistirir.
WdScreen: Count sayisi kadar ekran degistirir.
ALINTI: MSDN
Şimdi Range Objesini kullanarak seçme işlemlerini bir örnek ile inceleyelim.
Dim dokuman As Word.Document
dokuman = WordApp.Documents.Open("c:\test.doc")
Dim range As Word.Range
range = dokuman.Range(0, 15) dokuman.range(Baslangic, Bitis)
range.Select() 'Bu komut ile 0-15 karakter arasında seçme yapılır
Bütün dokumanı seçmek için,
range = dokuman.Range(0, dokuman.Characters.Count)
Yazıyı formatlama
Formatlama
Range komutuyla seçilen parçaların formatları değiştirilebilir.
'seçilmiş alanı 18 size Verdana yazitipine sahip ortalanmış sekle dönüştürüyoruz.
With range
.Font.Size = 18
.Font.Name = " Verdana "
.ParagraphFormat.Alignment =Word.WdParagraphAlignment.wdAlignParagraphCenter
End With
__________________
sevince...
SaidX isimli Üye şimdilik offline konumundadır  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Alıntı ile Cevapla

Cevapla

Anahtar Kelimeler
wordandnet





Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir)
 
Seçenekler
Stil

Yetkileriniz
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-KodlarıKapalı
Trackbacks are Açık
Pingbacks are Açık
Refbacks are Açık


Şu Anki Saat: 00:03


Powered by vBulletin® Version 3.7.4
Copyright ©2000 - 2009, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO 3.1.0
Beşiktaş Tezahüratları