<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
	<channel>
		<title><![CDATA[Fox4um - Dosya yolunu textbox'ta göstermek]]></title>
		<link>http://www.fox4um.com/topic/1328/dosya-yolunu-textboxta-gostermek/</link>
		<description><![CDATA[The most recent posts in Dosya yolunu textbox'ta göstermek.]]></description>
		<lastBuildDate>Tue, 08 Sep 2009 20:16:00 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: Dosya yolunu textbox'ta göstermek]]></title>
			<link>http://www.fox4um.com/post/8071/#p8071</link>
			<description><![CDATA[<p>Sakincasi olmamakla beraber o zaman class olmasinin esprisi de yok. Property eklemek kolay. Bir suru yolu var, enkolaylarindan birisi menuden &quot;Class\New Property&quot; secip oradan bir ya da daha fazla propertyi eklemek. Eninde sonunda bunu yapmayi ogrenmen lazim.
</p><p>Not: Bu arada lblSelect filan konusunda haklisin, benim hatam. Kendi classimdan kodu kopyeledim, dikkatsiz bir sekilde yazmisim yapman gerekenleri.</p>]]></description>
			<author><![CDATA[dummy@example.com (cetinbasoz)]]></author>
			<pubDate>Tue, 08 Sep 2009 20:16:00 +0000</pubDate>
			<guid>http://www.fox4um.com/post/8071/#p8071</guid>
		</item>
		<item>
			<title><![CDATA[Re: Dosya yolunu textbox'ta göstermek]]></title>
			<link>http://www.fox4um.com/post/8067/#p8067</link>
			<description><![CDATA[<p>Çetin hocam,
<br />dediklerinizi aynen yaptım veya ben öyle sanıyorum.
<br />ancak, cmdDosya&#039;yı çalıştırınca hatalar verdi, ilk olarak
<br /><span class="bbu">with This.Parent.CommDlg</span>
<br />satırında CommDlg&#039;u bulamıyorum dedi, ben de microsoft common dialog&#039;un ismini CommDlg yaptım, daha sonra çalıştırınca bu kez
<br /><span class="bbu">.DialogTitle = this.Parent.lblSelect.Caption</span>
<br />satırında, ben de labelın ismini lblSelect yaptım ancak sonra
<br /><span class="bbu">&nbsp; .Flags = cdlOFNPathMustExist+cdlOFNHideReadOnly+cdlOFNNoChangeDir+iif(this.Parent.lSaveAs,0,cdlOFNFileMustExist)</span>
<br />satırında da aynı hatayı verdi, özetle this.parent&#039;tan sonraki kontrolleri bulamıyor anladığım kadarıyla yahut ben birşeyleri yanlış yapıyorum derken
<br />tabi ki yanlışımı fark ettim. anladığım kadarıyla ben class&#039;a sizin dediğiniz properties ekleme işini becerememişim.Zira cmdDosya kodundan 
</p><p>* Set flags
<br />&nbsp; .Flags = cdlOFNPathMustExist+cdlOFNHideReadOnly+cdlOFNNoChangeDir+iif(this.Parent.lSaveAs,0,cdlOFNFileMustExist)
<br />&nbsp; * Set filters
<br />&nbsp; .Filter = this.Parent.FilterList
<br />&nbsp; * Specify default filter
<br />&nbsp; .FilterIndex = this.Parent.FilterIndexPos
<br />&nbsp; .DefaultExt = this.Parent.DefaultExtension
<br />&nbsp; * Display the Open dialog box
</p><p>kısmını çıkarınca sorunsuz çalıştı, forma eklediğimde Çalıştır butonu da txtDosya&#039;daki dosyayı çalıştırdı.
</p><p>Sonuç olarak; class&#039;a property ekleme işini beceremedim, kodun söylediğim yerlerini çıkarıp kullanmanın sakıncası var mı?</p>]]></description>
			<author><![CDATA[dummy@example.com (hazzarbey)]]></author>
			<pubDate>Tue, 08 Sep 2009 16:41:19 +0000</pubDate>
			<guid>http://www.fox4um.com/post/8067/#p8067</guid>
		</item>
		<item>
			<title><![CDATA[Re: Dosya yolunu textbox'ta göstermek]]></title>
			<link>http://www.fox4um.com/post/8062/#p8062</link>
			<description><![CDATA[<p>Adim adim Anadolu:)
</p><p>1) Gecici bir form yarat (saklamayacagiz). Modify Form xx [enter]
<br />2) Forma sunlari koy:
<br />Bir label (&quot;Dosyayi Secin&quot; filan gibi bir baslik)
<br />Bir textbox (adini txtDosya yap)
<br />Bir commandbutton (cmdDosya, caption: ...)
<br />ve son olarak Microsoft Common Dialog Control (activex - kitap iconuna tiklayip cikanlardan sececeksin, eger henuz eklemediysen once menu &quot;Tools\options\Controls&quot;tan ekle.
<br />3) 2 Commandbutton&#039;dan cmdDosya&#039;nin click kodunu yaz:
</p><div class="codebox"><div class="head">Visual Fox Pro</div><table class="visualfoxpro fxcode"><tbody><tr class="li1"><td class="ln"><pre class="de1">1
<br />2
<br />3
<br />4
<br />5
<br />6
<br />7
<br />8
<br />9
<br />10
<br />11
<br />12
<br />13
<br />14
<br />15
<br />16
<br />17
<br />18
<br />19
<br /></pre></td><td class="de1"><pre class="de1"><span class="kw1">#define</span> cdlOFNFileMustExist 0x1000
<br /><span class="kw1">#define</span> cdlOFNHideReadOnly &nbsp;0x4
<br /><span class="kw1">#define</span> cdlOFNNoChangeDir 0x8
<br /><span class="kw1">#define</span> cdlOFNPathMustExist 0x800 
<br /><span class="kw1">with</span> <span class="kw2">This</span><span class="sy0">.</span><span class="kw4">Parent</span><span class="sy0">.</span><span class="me1">CommDlg</span>
<br />&nbsp; <span class="sy0">.</span><span class="me1">DialogTitle</span> <span class="sy0">=</span> <span class="kw2">this</span><span class="sy0">.</span><span class="kw4">Parent</span><span class="sy0">.</span><span class="me1">lblSelect</span><span class="sy0">.</span><span class="kw3">Caption</span>
<br />&nbsp; <span class="sy0">*</span> <span class="kw2">Set</span> flags
<br />&nbsp; <span class="sy0">.</span><span class="me1">Flags</span> <span class="sy0">=</span> cdlOFNPathMustExist<span class="sy0">+</span>cdlOFNHideReadOnly<span class="sy0">+</span>cdlOFNNoChangeDir<span class="sy0">+</span><span class="kw1">iif</span><span class="br0">&#40;</span><span class="kw2">this</span><span class="sy0">.</span><span class="kw4">Parent</span><span class="sy0">.</span><span class="me1">lSaveAs</span><span class="sy0">,</span><span class="nu0">0</span><span class="sy0">,</span>cdlOFNFileMustExist<span class="br0">&#41;</span>
<br />&nbsp; <span class="sy0">*</span> <span class="kw2">Set</span> filters
<br />&nbsp; <span class="sy0">.</span><span class="kw3">Filter</span> <span class="sy0">=</span> <span class="kw2">this</span><span class="sy0">.</span><span class="kw4">Parent</span><span class="sy0">.</span><span class="me1">FilterList</span>
<br />&nbsp; <span class="sy0">*</span> Specify <span class="kw3">default</span> <span class="kw3">filter</span>
<br />&nbsp; <span class="sy0">.</span><span class="me1">FilterIndex</span> <span class="sy0">=</span> <span class="kw2">this</span><span class="sy0">.</span><span class="kw4">Parent</span><span class="sy0">.</span><span class="me1">FilterIndexPos</span>
<br />&nbsp; <span class="sy0">.</span><span class="kw1">DefaultExt</span> <span class="sy0">=</span> <span class="kw2">this</span><span class="sy0">.</span><span class="kw4">Parent</span><span class="sy0">.</span><span class="me1">DefaultExtension</span>
<br />&nbsp; <span class="sy0">*</span> <span class="kw1">Display</span> the <span class="kw2">Open</span> dialog <span class="kw3">box</span>
<br />&nbsp; <span class="sy0">.</span><span class="me1">ShowOpen</span>
<br />&nbsp; <span class="kw1">if</span> <span class="sy0">!</span><span class="kw4">empty</span><span class="br0">&#40;</span><span class="sy0">.</span><span class="me1">Filename</span><span class="br0">&#41;</span>
<br />&nbsp; &nbsp; &nbsp; <span class="kw2">this</span><span class="sy0">.</span><span class="kw4">Parent</span><span class="sy0">.</span><span class="me1">txtDosya</span><span class="sy0">.</span><span class="kw4">Value</span> <span class="sy0">=</span> <span class="sy0">.</span><span class="me1">filename</span>
<br />&nbsp; <span class="kw1">endif</span>
<br /><span class="kw1">endwith</span></pre></td></tr></tbody></table></div><p>
</p><p>4) Bu kontrolleri istedigin gibi gorsel acidan duzenle.
<br />5) Ucunu birden sec, menu &#039;File\Save as class&quot;. Bir class library ve class adi ver - ornegin class adi dosyaSec olsun.
<br />6) O classa bazi propertyler ekle:
</p><p>FilterList (filtreleyecegi dosyalar)
<br />* Default degerini istewdigin gibi yaz benimki:
<br />All Files (*.*)|*.*|Databases (*.dbc)|*.dbc|Tables (*.dbf)|*.dbf|Forms (*.scx)|*.scx|Classes (*.vcx)|*.vcx
</p><p>FilterIndexPos (baslangicta secili olan filtre indexi)
<br />Benimki: 3 (yani dbf&#039;ler)
</p><p>lSaveAs
<br />Default .F. Bu .T. ise o zaman dosya olmak zorunda degil. Yeni dosyayi surada su isimle sakla cinsi secimler icin.
</p>
<br /><p>Su ana kadar yaptigin bir adet &quot;dosya secim&quot; kontrolunu class olarak yapmak oldu. Artik dosya sectirecegin her yerde bunu kullanabilirsin.
</p><p>Simdi bunu kullanacagin yere koy (ister surukle birak, ister toolbardan sec ...). Calistirmakta kullanacagin CommandButton&#039;i koy (dikkat et, calistiran butonu ayri tuttuk. Dosya secme cok kullanilan bir is ama o dosyanin calistirilmasi nadir, o yuzden class&#039;in parcasi yapmadik. Bir alt class yapabiliriz ama bence gereksiz). Caption&#039;ini yaz ve click koduna sunu koy:
</p><div class="codebox"><div class="head">Visual Fox Pro</div><table class="visualfoxpro fxcode"><tbody><tr class="li1"><td class="ln"><pre class="de1">1
<br />2
<br />3
<br />4
<br />5
<br />6
<br />7
<br />8
<br />9
<br />10
<br /></pre></td><td class="de1"><pre class="de1"><span class="kw1">local</span> lcFileName
<br />lcFileName <span class="sy0">=</span> <span class="kw2">trim</span><span class="br0">&#40;</span><span class="kw2">thisform</span><span class="sy0">.</span><span class="me1">dosyaSec1</span><span class="sy0">.</span><span class="me1">txtDosya</span><span class="sy0">.</span><span class="kw4">Value</span><span class="br0">&#41;</span>
<br /><span class="kw1">if</span> <span class="sy0">!</span><span class="kw4">empty</span><span class="br0">&#40;</span>m<span class="sy0">.</span><span class="me1">lcFileName</span><span class="br0">&#41;</span> <span class="kw2">and</span> <span class="kw2">file</span><span class="br0">&#40;</span>m<span class="sy0">.</span><span class="me1">lcFileName</span><span class="br0">&#41;</span>
<br />&nbsp; <span class="kw1">declare</span> <span class="kw2">long</span> ShellExecute <span class="kw2">in</span> <span class="st0">&quot;shell32.dll&quot;</span> <span class="sy0">;</span>
<br />&nbsp; &nbsp; <span class="kw2">long</span> <span class="kw4">hwnd</span><span class="sy0">,</span> <span class="kw3">string</span> lpszOp<span class="sy0">,</span> <span class="sy0">;</span>
<br />&nbsp; &nbsp; <span class="kw3">string</span> lpszFile<span class="sy0">,</span> <span class="kw3">string</span> lpszParams<span class="sy0">,</span> <span class="sy0">;</span>
<br />&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw3">string</span> lpszDir<span class="sy0">,</span> <span class="kw2">long</span> nShowCmd
<br />&nbsp;
<br />&nbsp; ShellExecute<span class="br0">&#40;</span><span class="nu0">0</span><span class="sy0">,</span>'<span class="kw2">Open</span>'<span class="sy0">,</span>m<span class="sy0">.</span><span class="me1">lcFileName</span><span class="sy0">,</span><span class="nu0">0</span><span class="sy0">,</span><span class="nu0">0</span><span class="sy0">,</span><span class="nu0">1</span><span class="br0">&#41;</span>
<br /><span class="kw1">endif</span></pre></td></tr></tbody></table></div><p>
</p><p>Bu kadar.</p>]]></description>
			<author><![CDATA[dummy@example.com (cetinbasoz)]]></author>
			<pubDate>Tue, 08 Sep 2009 14:01:02 +0000</pubDate>
			<guid>http://www.fox4um.com/post/8062/#p8062</guid>
		</item>
		<item>
			<title><![CDATA[Dosya yolunu textbox'ta göstermek]]></title>
			<link>http://www.fox4um.com/post/8059/#p8059</link>
			<description><![CDATA[<p>merhaba arkadaşlar,
<br />formda bir textbox ve yanında 2 adet command button var. butonlardan birisine basınca dosya seçebileceğim ekranın çıkıp dosyamı seçebilmeyi ve tamam deyince seçtiğim dosyanın yolunun da textbox&#039;ta görünmesini istiyorum. 
<br />mesela C://Fox/belge.pdf (uzantı .doc ta olabilir) gibi
<br />ikinci butona basınca da yolu textbox&#039;ta görülen dosyanın açılmasını istiyorum. 
<br />fox/samples/solutions daki örneklerde hep GETFİLE kullanılmış ama ben öyle yapınca dosyayı doğrudan açmaya çalışıyor doğal olarak
<br />kısacası üstadlara şunu sormak istiyorum:
<br />1. beceremediğim bu işi nasıl yaparım?
<br />2. textboxtaki dosya yolunu .dbf tablosunda saklamam için ekstra birşeyler yapmam gerekir mi?</p>]]></description>
			<author><![CDATA[dummy@example.com (hazzarbey)]]></author>
			<pubDate>Tue, 08 Sep 2009 13:27:36 +0000</pubDate>
			<guid>http://www.fox4um.com/post/8059/#p8059</guid>
		</item>
	</channel>
</rss>

