<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>DigitalNews &#187; Προγραμματισμός</title>
	<atom:link href="http://www.digitalnews.gr/category/tutorials-how-to/programming-tutorials/feed" rel="self" type="application/rss+xml" />
	<link>http://www.digitalnews.gr</link>
	<description>Τεχνολογία, Ενημέρωση, Τεχνολογικά Νέα, Οδηγοί - Tutorials</description>
	<lastBuildDate>Wed, 08 Feb 2012 07:26:01 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Μάσκα εικόνας για διαφανή γραφικά σε C#</title>
		<link>http://www.digitalnews.gr/4032/%ce%bc%ce%ac%cf%83%ce%ba%ce%b1-%ce%b5%ce%b9%ce%ba%cf%8c%ce%bd%ce%b1%cf%82-%ce%b3%ce%b9%ce%b1-%ce%b4%ce%b9%ce%b1%cf%86%ce%b1%ce%bd%ce%ae-%ce%b3%cf%81%ce%b1%cf%86%ce%b9%ce%ba%ce%ac-%cf%83%ce%b5-c</link>
		<comments>http://www.digitalnews.gr/4032/%ce%bc%ce%ac%cf%83%ce%ba%ce%b1-%ce%b5%ce%b9%ce%ba%cf%8c%ce%bd%ce%b1%cf%82-%ce%b3%ce%b9%ce%b1-%ce%b4%ce%b9%ce%b1%cf%86%ce%b1%ce%bd%ce%ae-%ce%b3%cf%81%ce%b1%cf%86%ce%b9%ce%ba%ce%ac-%cf%83%ce%b5-c#comments</comments>
		<pubDate>Sat, 11 Aug 2007 15:50:00 +0000</pubDate>
		<dc:creator></dc:creator>
				<category><![CDATA[Προγραμματισμός]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Με την βοήθεια του παρακάτω κώδικα μπορείτε να εμφανίσετε μία εικόνα μέσα σε μία άλλη χρησιμοποιώντας ως σχήμα-περίγραμμα μία τρίτη εικόνα. Ουσιαστικά αυτό επιτυγχάνεται όταν στο χειριστήριο picturebox που βρίσκεται μέσα στην φόρμα, χρησιμοποιείται μία εικόνα που προσδιορίζει τα ορατά [...]]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal">
<p class="MsoNormal">Με την βοήθεια του<span>  </span>παρακάτω κώδικα<span>  </span>μπορείτε να εμφανίσετε μία εικόνα μέσα σε μία άλλη χρησιμοποιώντας<span>  </span>ως σχήμα-περίγραμμα<span>  </span>μία τρίτη εικόνα. </p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Ουσιαστικά αυτό επιτυγχάνεται όταν στο χειριστήριο <span lang="EN-US">picturebox</span><span lang="EN-US"> </span>που βρίσκεται<span>  </span>μέσα στην φόρμα, χρησιμοποιείται μία εικόνα που προσδιορίζει τα ορατά ή όχι <span lang="EN-US">pixels</span>. Στις θέσεις των μη-ορατών <span lang="EN-US">pixel</span><span lang="EN-US"> </span>εμφανίζονται τα γραφικά που βρίσκονται πίσω από το χειριστήριο (εικόνα της φόρμας – <span lang="EN-US">Background</span>) ενώ τα ορατά απεικονίζουν την εικόνα που περιέχεται στο ίδιο το χειριστήριο.</p>
<p><span id="more-4032"></span>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">using</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> System;<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">using</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> System.Collections.Generic;<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">using</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> System.ComponentModel;<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">using</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> System.Data;<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">using</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> System.Drawing;<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">using</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> System.Text;<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">using</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> System.Windows.Forms;<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">namespace</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> transparent<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;">{<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>    </span><span style="color: blue;">public</span> <span style="color: blue;">partial</span> <span style="color: blue;">class</span> <span style="color: teal;">Form1</span> : <span style="color: teal;">Form<o:p></o:p></span></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>    </span>{<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">//ορισμός 10 εικόνων (για μάσκες)<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span><span style="color: blue;">private</span> <span style="color: blue;">const</span> <span style="color: blue;">int</span> max_msk=1</span><span lang="EN-US" style="font-size: 10pt; font-family: &quot;courier new&quot;;">0</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;">;<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span><span style="color: teal;">Bitmap</span> [] msk= <span style="color: blue;">new</span> <span style="color: teal;">Bitmap</span>[max_msk];<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: teal;">Bitmap</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"> backg;<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span><span style="color: green;">//καταχώρηση των γραφικών ανα μάσκα στα παρακάτω αντικείμενα<o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: teal;">PictureBox</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;">[] pcbox = <span style="color: blue;">new</span> <span style="color: teal;">PictureBox</span>[max_msk];<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span><span style="color: blue;">public</span> Form1()<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span>{<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span>InitializeComponent();<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span><span style="color: green;">//</span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">φόρτωση</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"> </span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">του</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"> </span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">φόντου</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>             </span>backg=(<span style="color: teal;">Bitmap</span>) <span style="color: teal;">Image</span>.FromFile(<span style="color: maroon;">&#8220;back.jpg&#8221;</span>);<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span><span style="color: blue;">for</span> (<span style="color: blue;">int</span> a = 1; a &lt; (max_msk+1); a++)<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;;">{<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>                </span><span style="color: green;">//φόρτωση όλων των γραφικών(μασκες)<o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>                </span></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;">msk[a-1]=(<span style="color: teal;">Bitmap</span>)<span>   </span><span style="color: teal;">Image</span>.FromFile(<span style="color: maroon;">&#8220;msk&#8221;</span> + a.ToString() + <span style="color: maroon;">&#8220;.jpg&#8221;</span>);<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>             </span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;;">pcbox[a - 1] = <span style="color: blue;">new</span> <span style="color: teal;">PictureBox</span>();<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>             </span><span style="color: green;">//ορισμός των διαστάσεων<o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>             </span></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;">pcbox[a - 1].Width = pic1.Width;<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>             </span>pcbox[a - 1].Height = pic1.Height;<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>               </span><span style="color: green;">//</span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">κλίση</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"> </span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">συνάρτησης</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"> </span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">δημιουργίας</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"> </span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">διαφανούς</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"> </span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">γραφικού</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>                </span><span style="color: teal;">transparent</span>.make_pic_transparent(pcbox[a - 1], msk[a - 1]);<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>  </span><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span><span>        </span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">//φόρτωση του γραφικού που θα εμφανιστεί (στα ορατά pixel)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>                </span>pcbox[a - 1].BackgroundImage = backg;<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span>}<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span><span style="color: green;">//εμφάνιση του φόντου<o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span>pic1.BackgroundImage = (<span style="color: teal;">Bitmap</span>)<span style="color: teal;">Image</span>.FromFile(<span style="color: maroon;">&#8220;back.jpg&#8221;</span>);<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span> </span><span>       </span></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;">}<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span><span style="color: blue;">static</span> <span style="color: blue;">int</span> ct = 0;<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span><span style="color: blue;">private</span> <span style="color: blue;">void</span> run_me_Click(<span style="color: blue;">object</span> sender, <span style="color: teal;">EventArgs</span> e)<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;;">{<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span><span style="color: green;">//εμφάνιση του γραφικού με άλλο περίγραμμα, σύμφωνα με την μασκα που φορτώθηκε<o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">if</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> (ct&lt;max_msk) pic1.Region = pcbox[ct].Region;<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;;">ct = (ct + 1) ; <o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>           </span>}<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>         </span><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span> </span><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span><span style="color: blue;">private</span> <span style="color: blue;">void</span> Form1_MouseMove(<span style="color: blue;">object</span> sender, <span style="color: teal;">MouseEventArgs</span> e)<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;;">{<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span><span style="color: green;">//αλλαγή θέσης του χειριστηρίου picturebox μέσα στην φόρμα<o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">if</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> (e.Button == <span style="color: teal;">MouseButtons</span>.Left)<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span>{<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>               </span>pic1.Left = e.X;<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>               </span>pic1.Top = e.Y;<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;;">}<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>    </span><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>    </span>}<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span><span style="color: blue;">private</span> <span style="color: blue;">void</span> Form1_Load(<span style="color: blue;">object</span> sender, <span style="color: teal;">EventArgs</span> e)<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;;">{<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span>}<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>     </span><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>    </span>}<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;">}</span><o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">/</span><span lang="EN-US" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">* </span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">τάξη transparent</span><span lang="EN-US" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"> */</span><span lang="EN-US"><o:p></o:p></span></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">using</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> System;<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">using</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> System.Collections.Generic;<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">using</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"> System.Text;<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">//απαραίτητες βιβλιοθήκες για αυτή την τάξη<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">using</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> System.Drawing.Drawing2D;<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">using</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> System.Windows.Forms;<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">using</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> System.Drawing;<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">namespace</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> transparent<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;">{<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>    </span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">class</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"> <span style="color: teal;">transparent<o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>  </span><span>  </span>{<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span><span style="color: green;">//χρησιμοποίησε το πρώτο pixel του bitmap για καθορισμό της μάσκας<o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">public</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> <span style="color: blue;">static</span> <span style="color: blue;">void</span> make_pic_transparent(<span style="color: teal;">PictureBox</span> pic, <span style="color: teal;">Bitmap</span> natural_bitmap)<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span>{<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span>make_pic_transparent(pic, natural_bitmap, natural_bitmap.GetPixel(0, 0));<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span>}<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span><span style="color: green;">//</span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">δημιούργησε</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"> </span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">διαφανή</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"> </span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">εικόνα</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span><span style="color: blue;">public</span> <span style="color: blue;">static</span> <span style="color: blue;">void</span> make_pic_transparent(<span style="color: teal;">PictureBox</span> pic, <span style="color: teal;">Bitmap</span> natural_bitmap, <span style="color: teal;">Color</span> mask_trans)<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span>{<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span><span style="color: teal;">Bitmap</span> bt = <span style="color: blue;">new</span> <span style="color: teal;">Bitmap</span>(natural_bitmap, <span style="color: blue;">new</span> <span style="color: teal;">Size</span>(pic.Width, pic.Height));<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span><span style="color: teal;">GraphicsPath</span> path_gr = make_gr_path(bt, mask_trans.ToArgb());<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span>pic.Region = <span style="color: blue;">new</span> <span style="color: teal;">Region</span>(path_gr);<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;;">pic.BackgroundImage = bt;<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span>}<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span><span style="color: green;">//υπολογισμός των εμφανιζόμενων πixel<o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">public</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> <span style="color: blue;">static</span> <span style="color: teal;">GraphicsPath</span> make_gr_path(<span style="color: teal;">Bitmap</span> bitmap, <span style="color: blue;">int</span> colorTransparent)<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span>{<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span><span style="color: teal;">GraphicsPath</span> graphicsPath = <span style="color: blue;">new</span> <span style="color: teal;">GraphicsPath</span>();<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span><span style="color: blue;">int</span> colOpaquePixel = 0;<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span><span style="color: teal;">Color</span> trn=<span style="color: blue;">new</span> <span style="color: teal;">Color</span>();<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span>trn=<span style="color: teal;">Color</span>.FromArgb(colorTransparent);<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">double</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"> deep = 30;<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span><span style="color: green;">//ο παρακάτω κώδικας σαρώνει και ανιχνεύει της περιοχές-pixel που ταιριάζουν<o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span><span style="color: green;">//κατα προσέγγιση στην απόχρωση με το χρώμα που έχει οριστεί στο colorTransparent<o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span><span style="color: green;">//Κάθε περιοχή που βρίσκει οτι τα γραφικά δεν θα είναι διαφανή, προσθέτει<o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span><span style="color: green;">//μέσω της συνάρτησης graphicsPath.AddRectangle το τμήμα αυτό ως εμφανιζόμενο τμήμα της εικόνας<o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">for</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> (<span style="color: blue;">int</span> row = 0; row &lt; bitmap.Height; row++)<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span>{<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>                </span>colOpaquePixel = 0;<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>           </span><span>     </span><span style="color: blue;">for</span> (<span style="color: blue;">int</span> col = 0; col &lt; bitmap.Width; col++)<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>                </span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;;">{<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span> </span><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>                    </span><span style="color: green;">//έλεγχος αν τα χρώματα είναι περίπου ίδια με αυτά της μάσκας ή οχι<o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>                    </span></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">if</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> (! cmp_color (bitmap.GetPixel(col, row),trn,deep))<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>                    </span>{<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span> </span><span>                       </span>colOpaquePixel = col;<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>                        </span><span style="color: blue;">int</span> colNext = col;<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>                        </span><span style="color: blue;">for</span> (colNext = colOpaquePixel; colNext &lt; bitmap.Width; colNext++)<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>                        </span>{<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>                            </span><span style="color: blue;">if</span> (cmp_color(bitmap.GetPixel(colNext, row), trn, deep)) <span style="color: blue;">break</span>;<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>                                                                                   </span><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>                        </span>}<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>                        </span>graphicsPath.AddRectangle(<span style="color: blue;">new</span> <span style="color: teal;">Rectangle</span>(colOpaquePixel, row, colNext &#8211; colOpaquePixel, 1));<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>                        </span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;;">col = colNext;<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>                    </span>}<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>                </span>}<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span>}<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span><span style="color: green;">//επιστρέφει την μασκα που υπολογίστηκε<o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span><span style="color: blue;">return</span> graphicsPath;<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span>}<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>     </span><span style="color: green;">//η cmp_color υπολογίζει αν οι αναλύσεις του χρώματος κάθε pixel σε RGB <o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>     </span><span style="color: green;">//με το χρώμα της μάσκας που επιλέχθηκε έχουν διαφορές μεγαλύτερες ή οχι απο μία ορισμένη τιμή (decline)<span>                    </span><o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>     </span><span style="color: green;">//αυτό είναι χρήσιμο λόγο του γεγονότος οτι οι αποχρώσεις των bitmap είναι πολλές<o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>     </span><span style="color: green;">//και δεν θα μπορούσε να επιτευχθεί διαχωρισμός χρωμάτων με μία τιμή μόνο.<o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">private</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> <span style="color: blue;">static</span> <span style="color: blue;">bool</span> cmp_color(<span style="color: teal;">Color</span> cl1, <span style="color: teal;">Color</span> cl2, <span style="color: blue;">double</span> decline)<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span>{<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span><span style="color: blue;">return</span> (<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span><span style="color: teal;">Math</span>.Abs (cl1.R-cl2.R)&lt;decline &amp;&amp;<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span><span style="color: teal;">Math</span>.Abs<span>  </span>(cl1.G-cl2.G)&lt;decline &amp;&amp;<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span><span style="color: teal;">Math</span>.Abs(cl1.B-cl2.B)&lt;decline);<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;;">}<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>    </span><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>    </span>}<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;">}<o:p></o:p></span></p>
<img src="http://www.digitalnews.gr/?ak_action=api_record_view&id=4032&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.digitalnews.gr/4032/%ce%bc%ce%ac%cf%83%ce%ba%ce%b1-%ce%b5%ce%b9%ce%ba%cf%8c%ce%bd%ce%b1%cf%82-%ce%b3%ce%b9%ce%b1-%ce%b4%ce%b9%ce%b1%cf%86%ce%b1%ce%bd%ce%ae-%ce%b3%cf%81%ce%b1%cf%86%ce%b9%ce%ba%ce%ac-%cf%83%ce%b5-c/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ανάλυση γονικού φακέλου</title>
		<link>http://www.digitalnews.gr/4031/%ce%b1%ce%bd%ce%ac%ce%bb%cf%85%cf%83%ce%b7-%ce%b3%ce%bf%ce%bd%ce%b9%ce%ba%ce%bf%cf%8d-%cf%86%ce%b1%ce%ba%ce%ad%ce%bb%ce%bf%cf%85</link>
		<comments>http://www.digitalnews.gr/4031/%ce%b1%ce%bd%ce%ac%ce%bb%cf%85%cf%83%ce%b7-%ce%b3%ce%bf%ce%bd%ce%b9%ce%ba%ce%bf%cf%8d-%cf%86%ce%b1%ce%ba%ce%ad%ce%bb%ce%bf%cf%85#comments</comments>
		<pubDate>Thu, 02 Aug 2007 17:10:00 +0000</pubDate>
		<dc:creator></dc:creator>
				<category><![CDATA[Προγραμματισμός]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Με το παρακάτω απόσπασμα κώδικα μπορείτε να καταχωρήσετε σε μία λίστα όλους τους υποφακέλους ενός αρχικού γονικού-φακέλου (τον ορίζετε εσείς). Μπορείτε να επεκτείνετε τον κώδικα ετσι ώστε να βρείτε το πλήθος φακέλων,αρχείων, συνολικό μεγέθος κτλ using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using [...]]]></description>
			<content:encoded><![CDATA[<p><span style="font-size: 12pt; font-family: &quot;times new roman&quot;;">Με το παρακάτω απόσπασμα κώδικα μπορείτε να καταχωρήσετε σε μία λίστα όλους τους υποφακέλους ενός αρχικού γονικού-φακέλου (τον ορίζετε εσείς). Μπορείτε να επεκτείνετε τον κώδικα ετσι ώστε να βρείτε το πλήθος φακέλων,αρχείων, συνολικό μεγέθος κτλ</span><span id="more-4031"></span>
<p class="MsoNormal" ><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p></o:p></span></p>
<p>
<div style="border: 1px solid ;" class="xoopsCode"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">using</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> </span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;">System</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;;">;<o:p></o:p></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;"><br />using</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> System.Collections.Generic;<o:p></o:p></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;"><br />using</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> System.ComponentModel;<o:p></o:p></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;"><br />using</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> System.Data;<o:p></o:p></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;"><br />using</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> System.Drawing;<o:p></o:p></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;"><br />using</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> System.Text;<o:p></o:p></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;"><br />using</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> System.Windows.Forms;<o:p></o:p></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;"><br />using</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> System.IO;<o:p></o:p></span>  </div>
<div style="border: 1px solid ;" class="xoopsCode">   <span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">namespace</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> expand_folders<o:p></o:p></span>
<p class="MsoNormal" ><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;">{<o:p></o:p><br /><span>   </span><span style="color: blue;">public</span> <span style="color: blue;">partial</span> <span style="color: blue;">class</span> <span style="color: teal;">Form1</span> : <span style="color: teal;">Form<o:p></o:p></span></span></p>
<p class="MsoNormal" ><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>    </span>{<o:p></o:p><br /><span>      </span><span style="color: blue;">public</span> Form1()<o:p></o:p></span></p>
<p class="MsoNormal" ><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span>{<o:p></o:p><span></span>InitializeComponent();<o:p></o:p><span> </span><o:p></o:p></span></p>
</p></div>
<p>
<div style="border: 1px solid ;" class="xoopsCode">
<p class="MsoNormal" ><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span><span style="color: green;">//</span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">ορισμός</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"> </span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">της</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"> </span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">λίστας</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"> </span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">δεδομένων</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p></o:p><br /><span></span><span style="color: teal;">List</span>&lt;<span style="color: blue;">string</span>> lst = <span style="color: blue;">new</span> <span style="color: teal;">List</span>&lt;<span style="color: blue;">string</span>>();<o:p></o:p></span></p>
</p></div>
<p>
<div style="border: 1px solid ;" class="xoopsCode"> <span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">//Γεγονός-πάτημα κουμπιού, εεκτέλεση του κώδικα <o:p></o:p></span>
<p class="MsoNormal" ><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">private</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> <span style="color: blue;">void</span> expd_Click(<span style="color: blue;">object</span> sender, <span style="color: teal;">EventArgs</span> e)<o:p></o:p></span></p>
<p class="MsoNormal" ><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span>{<o:p></o:p><br /><span>          </span><span style="color: green;">//</span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">καθαρισμός</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"> </span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">τις</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"> </span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">λίστα</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;">s (listbox1)<o:p></o:p><br /><span></span>          listBox1.Items.Clear();<o:p></o:p></span></p>
<p class="MsoNormal" ><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>          </span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">//ανάλυση του root c:\ στους υποφακέλους του<o:p></o:p></span></p>
<p class="MsoNormal" ><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span>run_expd(<span style="color: maroon;">&#8220;c:\\&#8221;</span>);<o:p></o:p></span></p>
<p class="MsoNormal" ><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span><span style="color: green;">//προσθήκη των αποτελεσμάτων στην listbox1<o:p></o:p></span></span></p>
<p class="MsoNormal" ><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;">listBox1.Items.AddRange(lst.ToArray() );<o:p></o:p></span></p>
<p class="MsoNormal" ><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;;">}<o:p></o:p></span></p>
</p></div>
<p>
<div style="border: 1px solid ;" class="xoopsCode"> <span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">//εύρεση όλων των φακέλων που βρίσκονται μέσα στον φάκελο που ορίζεται στην μεταβλητή path<o:p></o:p></span>
<p class="MsoNormal" ><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">private</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> <span style="color: blue;">void</span> run_expd(<span style="color: blue;">string</span> path)<o:p></o:p></span></p>
<p class="MsoNormal" ><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;;">{<o:p></o:p></span></p>
<p class="MsoNormal" ><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>         </span><span style="color: green;">//έλεγχος εάν το όρισμα path είναι φάκελος<o:p></o:p></span></span></p>
<p class="MsoNormal" ><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">if</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> (System.IO.<span style="color: teal;">Directory</span>.Exists(path))<o:p></o:p></span></p>
<p class="MsoNormal" ><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;;">{<o:p></o:p></span></p>
<p class="MsoNormal" ><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p>        <span>   </span><span style="color: green;">//πρόσθεση του φακέλου στην λίστα<o:p></o:p></span></span></p>
<p class="MsoNormal" ><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>                </span>lst.Add(path);<o:p></o:p></span></p>
<p class="MsoNormal" ><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p><span></span><span style="color: green;">//εύρεση των φακέλων που βρίσκονται μέσα στον τρέχον φάκελο <o:p></o:p></span></span></p>
<p class="MsoNormal" ><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: teal;">DirectoryInfo</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> rd = <span style="color: blue;">new</span> <span style="color: teal;">DirectoryInfo</span>(path);<o:p></o:p></span></p>
<p class="MsoNormal" ><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">//έλεγχος για την πρόσβαση των φακέλων<o:p></o:p></span></p>
<p class="MsoNormal" ><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>                </span><span style="color: blue;">try<o:p></o:p></span></span></p>
<p class="MsoNormal" ><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>                </span>{<o:p></o:p></span></p>
<p class="MsoNormal" ><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span> </span><span style="color: green;">//διέτρεξε τους φακέλους που βρίσκονται μέσα στον τρέχον φάκελο <o:p></o:p></span></span></p>
<p class="MsoNormal" ><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span> </span></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">foreach</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> (<span style="color: teal;">DirectoryInfo</span> d <span style="color: blue;">in</span> rd.GetDirectories())<o:p></o:p></span></p>
<p class="MsoNormal" ><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>                    </span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;;">{<o:p></o:p></span></p>
<p class="MsoNormal" ><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span> </span><span style="color: green;">//για κάθε φάκελο που διατρέχεις βρές όλους τους υποφακέλους που περιέχει και καταχώρησε τους στην λίστα lst (αναδρομικά)<o:p></o:p></span></span></p>
<p class="MsoNormal" ><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span> </span><span>          </span></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;">run_expd(d.FullName);<o:p></o:p></span></p>
<p class="MsoNormal" ><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>                    </span>}<o:p></o:p></span></p>
<p class="MsoNormal" ><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>                </span>}<o:p></o:p></span></p>
<p class="MsoNormal" ><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>                </span><span>catch<o:p></o:p></span> {<o:p></o:p></span></p>
<p><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>               </span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;;">}<o:p></o:p></span>
<p class="MsoNormal" ><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p><span>            </span>}<o:p></o:p></span></p>
<p class="MsoNormal" ><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span> <br />        </span>}<o:p></o:p></span></p>
<p class="MsoNormal" ><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>    </span>}<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;">}</span><span lang="EN-US"><o:p></o:p></span></p>
</p></div>
<img src="http://www.digitalnews.gr/?ak_action=api_record_view&id=4031&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.digitalnews.gr/4031/%ce%b1%ce%bd%ce%ac%ce%bb%cf%85%cf%83%ce%b7-%ce%b3%ce%bf%ce%bd%ce%b9%ce%ba%ce%bf%cf%8d-%cf%86%ce%b1%ce%ba%ce%ad%ce%bb%ce%bf%cf%85/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Γράψτε, διαβάστε&#8230;  διαγράψτε στην registry windows με c#!</title>
		<link>http://www.digitalnews.gr/4030/%ce%b3%cf%81%ce%ac%cf%88%cf%84%ce%b5-%ce%b4%ce%b9%ce%b1%ce%b2%ce%ac%cf%83%cf%84%ce%b5-%ce%b4%ce%b9%ce%b1%ce%b3%cf%81%ce%ac%cf%88%cf%84%ce%b5-%cf%83%cf%84%ce%b7%ce%bd-registry-windows-%ce%bc%ce%b5</link>
		<comments>http://www.digitalnews.gr/4030/%ce%b3%cf%81%ce%ac%cf%88%cf%84%ce%b5-%ce%b4%ce%b9%ce%b1%ce%b2%ce%ac%cf%83%cf%84%ce%b5-%ce%b4%ce%b9%ce%b1%ce%b3%cf%81%ce%ac%cf%88%cf%84%ce%b5-%cf%83%cf%84%ce%b7%ce%bd-registry-windows-%ce%bc%ce%b5#comments</comments>
		<pubDate>Sun, 15 Jul 2007 07:30:00 +0000</pubDate>
		<dc:creator></dc:creator>
				<category><![CDATA[Προγραμματισμός]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[θα εξηγήσουμε πώς μπορούμε να γράψουμε,να διαβάσουμε και να σβήσουμε από/στήν registry των windows μέσω από την γλώσσα προγραμματισμού c#.ΝΕΤ και vb.net. Το παρακάτω πρόγραμμα δημιουργεί κλειδιά και καταχωρεί τιμές, στην registry, τις ανακτά από αυτήν και έπειτα τις διαγράφει. [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;" class="MsoNormal"><span>θα εξηγήσουμε πώς μπορούμε να γράψουμε,να διαβάσουμε και να σβήσουμε από/στήν </span><span lang="EN-US">registry</span><span> των </span><span lang="EN-US">windows</span><span> μέσω από την γλώσσα προγραμματισμού </span><span lang="EN-US">c</span><span>#.ΝΕΤ και </span><span lang="EN-US">vb</span><span>.</span><span lang="EN-US">net</span><span>. Το παρακάτω πρόγραμμα δημιουργεί κλειδιά και καταχωρεί τιμές, στην </span><span lang="EN-US">registry</span><span>, τις ανακτά από αυτήν και έπειτα τις διαγράφει. </span>Επισημάνουμε ότι πρέπει να είστε προσεκτικοί στην διαγραφή κλειδιών από την <span lang="EN-US">registry</span><span>, σε δικά σας προγράμματα, αφου αυτό μπορεί να επιρεάσει την συμπεριφορά των </span><span lang="EN-US">windows</span></p>
<p><span id="more-4030"></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;;">Συμπεριλάβετε την παρακάτω γραμμή κώδικα στην αρχή του κώδικα σας,μαζί με τις άλλες βιβλιοθήκες που χρησιμοποιείτε</p>
<div class="xoopsCode" style="border: 1px solid ;"><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">using</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"> Microsoft.Win32;<o:p></o:p></span>  </div>
<p></span>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;">Τοποθετήστε τις παρακάτω συναρτήσεις στην βασική τάξη (class) της εφαρμογής σας.</span></p>
<div class="xoopsCode" style="border: 1px solid ;"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">private</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> <span style="color: blue;">void</span> Form1_Load(<span style="color: blue;">object</span> sender, <span style="color: teal;">EventArgs</span> e)<o:p></o:p></span>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span>{<o:p></o:p></span></p>
<p><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span>write_to_registry();<o:p></o:p></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span><br />            </span>read_from_registry();<o:p></o:p></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span><br />            </span>delete_my_registry();<o:p></o:p></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>         </span><o:p></o:p></span>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span>}<o:p></o:p></span></p>
</p></div>
<p>
<div class="xoopsCode" style="border: 1px solid ;"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span><span lang="EN-GB" style="color: blue;">private</span><span lang="EN-GB"> <span style="color: blue;">void</span> write_to_registry()<o:p></o:p></span></span>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span>{<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span><span style="color: blue;">try<o:p></o:p></span></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"><span>      </span><span>      </span>{<o:p></o:p><br />//</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">Άνοιξε</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"> </span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">την</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"> </span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">κατηγορία</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"> HKEY_LOCAL_MACHINE\SOFTWARE </span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">της</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"> REGISTRY </span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">των</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"> windows<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span><span style="color: teal;">RegistryKey</span> rk = <span style="color: teal;">Registry</span>.LocalMachine.OpenSubKey(<span style="color: maroon;">&#8220;SOFTWARE&#8221;</span>, <span style="color: blue;">true</span>);<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">//Δημιούργησε κλειδί με όνομα My testing<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;">rk = rk.CreateSubKey(<span style="color: maroon;">&#8220;My testing&#8221;</span>);<o:p></o:p></span></p>
<p><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">//Δημιούργησε μεταβλητές key1,key2,key3 με τιμές 10,20,&#8221;alpha&#8221; αντίστοιχα<o:p></o:p></span>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;">rk.SetValue(<span style="color: maroon;">&#8220;key1&#8243;</span>,10 );<span></span><br />rk.SetValue(<span style="color: maroon;">&#8220;key2&#8243;</span>, 20);<o:p></o:p><br /><span></span>rk.SetValue(<span style="color: maroon;">&#8220;key3&#8243;</span>, <span style="color: maroon;">&#8220;alpha&#8221;</span>);<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p></o:p><span></span>rk.Close();<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span> </span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;;">}<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">catch</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"> (<span style="color: teal;">Exception</span> io) <span style="color: green;">//Σε περίπτωση που τα παραπάνω δέν γίνουν εμφάνισε σχετικό μήνυμα σφάλματος<o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;">{<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span><span style="color: teal;">MessageBox</span>.Show(<span style="color: blue;">null</span>, io.Message, <span style="color: maroon;">&#8220;</span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: maroon;">Σφάλμα</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: maroon;">&#8220;</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;">, <span style="color: teal;">MessageBoxButtons</span>.OK, <span style="color: teal;">MessageBoxIcon</span>.Warning);<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span>}<o:p></o:p></span></p>
<p><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span>}</span></div>
<p>
<div class="xoopsCode" style="border: 1px solid ;"> <span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">private</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> <span style="color: blue;">void</span> read_from_registry()<o:p></o:p></span>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span>{<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span><span style="color: blue;">int</span> tm1 = 0, tm2 = 0;<o:p></o:p><br /><span></span><span style="color: blue;">string</span> tm3 = <span style="color: maroon;">&#8220;&#8221;</span>;<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span><span>try<o:p></o:p> </span>            {<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">//</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">Άνοιξε</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"> </span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">την</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"> </span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">κατηγορία</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"> HKEY_LOCAL_MACHINE\SOFTWARE </span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">της</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"> REGISTRY </span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">των</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"> windows<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span><span style="color: teal;">RegistryKey</span> rk = <span style="color: teal;">Registry</span>.LocalMachine.OpenSubKey(<span style="color: maroon;">&#8220;SOFTWARE&#8221;</span>, <span style="color: blue;">true</span>);<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">//και έπειτα άνοιξε την υποκατηγορία &#8220;My testing&#8221; (αν υπάρχει)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;">rk = rk.OpenSubKey(<span style="color: maroon;">&#8220;My testing&#8221;</span>);<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">//διάβασε τις τιμές των μεταβλητών και κάνε την αντίστοιχη μετατροπή (casting)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span> </span></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;">tm1= (<span style="color: blue;">int</span>) rk.GetValue(<span style="color: maroon;">&#8220;key1&#8243;</span>);<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span> </span>tm2 = (<span style="color: blue;">int</span>)rk.GetValue(<span style="color: maroon;">&#8220;key2&#8243;</span>);<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span> </span>tm3 = (<span style="color: blue;">string</span>) rk.GetValue(<span style="color: maroon;">&#8220;key3&#8243;</span>);<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">//</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">Εμφάνισε</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"> </span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">τα</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"> </span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">αποτελέσματα</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span><span style="color: teal;">MessageBox</span>.Show(<span style="color: maroon;">&#8220;key1=&#8221;</span> + tm1.ToString() + <span style="color: maroon;">&#8220;<span>  </span>key2=&#8221;</span> + tm2.ToString() + <span style="color: maroon;">&#8220;<span>  </span>key3=&#8221;</span> + tm3);<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;;">}<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">catch</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"> (<span style="color: teal;">Exception</span> io) <span style="color: green;">//Σε περίπτωση που τα παραπάνω δέν γίνουν εμφάνισε σχετικό μήνυμα σφάλματος<o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;">{<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span><span style="color: teal;">MessageBox</span>.Show(<span style="color: blue;">null</span>, io.Message, <span style="color: maroon;">&#8220;</span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: maroon;">Σφάλμα</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: maroon;">&#8220;</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;">, <span style="color: teal;">MessageBoxButtons</span>.OK, <span style="color: teal;">MessageBoxIcon</span>.Warning);<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span>}<o:p></o:p></span></p>
<p><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span>}</span></div>
<p>
<div class="xoopsCode" style="border: 1px solid ;">   <span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">private</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> <span style="color: blue;">void</span> delete_my_registry()<o:p></o:p></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>   { <br />     </span><span style="color: blue;"><br />try<o:p></o:p></span></span>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span>{<br /><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">//</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">Άνοιξε</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"> </span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">την</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"> </span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">κατηγορία</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"> HKEY_LOCAL_MACHINE\SOFTWARE </span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">της</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"> REGISTRY </span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">των</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"> windows<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span><span style="color: teal;">RegistryKey</span> rk = <span style="color: teal;">Registry</span>.LocalMachine.OpenSubKey(<span style="color: maroon;">&#8220;SOFTWARE&#8221;</span>, <span style="color: blue;">true</span>);<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">//Διέγραψε το κλειδί &#8220;My testing&#8221; (αν υπάρχει)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;">rk.DeleteSubKeyTree(<span style="color: maroon;">&#8220;My testing&#8221;</span>);<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span>rk.Close();<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><o:p> </o:p></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: teal;">MessageBox</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;;">.Show(<span style="color: maroon;">&#8220;Τα δοκιμαστικά κλειδιά διαγράφηκαν&#8221;</span>);<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>  </span>}<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">catch</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"> (<span style="color: teal;">Exception</span> io) <span style="color: green;">//Σε περίπτωση που τα παραπάνω δέν γίνουν εμφάνισε σχετικό μήνυμα σφάλματος<o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;">{<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span><span style="color: teal;">MessageBox</span>.Show(<span style="color: blue;">null</span>, io.Message, <span style="color: maroon;">&#8220;</span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: maroon;">Σφάλμα</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: maroon;">&#8220;</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;">, <span style="color: teal;">MessageBoxButtons</span>.OK, <span style="color: teal;">MessageBoxIcon</span>.Warning);<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>         </span><span>   </span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;;">}<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span>}</span></p>
</p></div>
<img src="http://www.digitalnews.gr/?ak_action=api_record_view&id=4030&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.digitalnews.gr/4030/%ce%b3%cf%81%ce%ac%cf%88%cf%84%ce%b5-%ce%b4%ce%b9%ce%b1%ce%b2%ce%ac%cf%83%cf%84%ce%b5-%ce%b4%ce%b9%ce%b1%ce%b3%cf%81%ce%ac%cf%88%cf%84%ce%b5-%cf%83%cf%84%ce%b7%ce%bd-registry-windows-%ce%bc%ce%b5/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Δυναμικός χειρισμός components στο Visual studio.net 2003,2005</title>
		<link>http://www.digitalnews.gr/4029/%ce%b4%cf%85%ce%bd%ce%b1%ce%bc%ce%b9%ce%ba%cf%8c%cf%82-%cf%87%ce%b5%ce%b9%cf%81%ce%b9%cf%83%ce%bc%cf%8c%cf%82-components-%cf%83%cf%84%ce%bf-visual-studionet-20032005</link>
		<comments>http://www.digitalnews.gr/4029/%ce%b4%cf%85%ce%bd%ce%b1%ce%bc%ce%b9%ce%ba%cf%8c%cf%82-%cf%87%ce%b5%ce%b9%cf%81%ce%b9%cf%83%ce%bc%cf%8c%cf%82-components-%cf%83%cf%84%ce%bf-visual-studionet-20032005#comments</comments>
		<pubDate>Tue, 10 Jul 2007 08:20:00 +0000</pubDate>
		<dc:creator></dc:creator>
				<category><![CDATA[Προγραμματισμός]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Χειρισμός πολλών ίδιου τύπου Components μέσω πίνακα αντικειμένων και γεγονότων μέσω μόνο μίας συνάρτησης σε Visual CSharp (C#) και Visual Basic 2003,2005 Θυμάστε πόσο απλά μπορούσατε να δημιουργήσετε πολλά ίδιου τύπου χειριστήρια και να τα χειριστείτε με ένα κοινό όνομα [...]]]></description>
			<content:encoded><![CDATA[<p>Χειρισμός πολλών ίδιου τύπου Components μέσω πίνακα αντικειμένων και γεγονότων μέσω μόνο μίας συνάρτησης σε Visual CSharp (C#) και Visual Basic 2003,2005<span id="more-4029"></span>
<p style="text-align: justify;" class="MsoNormal">Θυμάστε πόσο απλά μπορούσατε να δημιουργήσετε πολλά ίδιου τύπου χειριστήρια και να τα χειριστείτε με ένα κοινό όνομα και κοινά γεγονότα, χρησιμοποιώντας απλά έναν δείκτη; <span> </span>π.χ. <span lang="EN-US">picturebox</span>[0], <span lang="EN-US">picturebox</span>[1], <span lang="EN-US">picturebox</span>[2] κτλ. και με μία συνάρτηση τύπου <span lang="EN-US">Pirture</span>_<span lang="EN-US">click</span>(<span lang="EN-US">index</span><span lang="EN-US"> </span><span lang="EN-US">as</span><span lang="EN-US"> </span><span lang="EN-US">integer</span>) να γράψετε κοινό κώδικα για όλα τα χειριστήρια που επιθυμείτε; Όλα αυτά τα κάνατε στο <span lang="EN-US">Visual</span><span lang="EN-US"> </span><span lang="EN-US">studio</span> 6. <span> </span>Πώς γίνεται όμως αυτό στο <span lang="EN-US">Visual</span><span lang="EN-US"> </span><span lang="EN-US">studio</span> 2003 ή 2005;</p>
<p class="MsoNormal"><o:p></o:p>Δυστυχώς τα δύο τελευταία πακέτα δεν επιτρέπουν να ορίσετε με το ίδιο όνομα πολλά χειριστήρια και έτσι πρέπει να γράψετε λίγο παραπάνω κώδικα (αν βέβαια έχετε πολλά όμοια χειριστήρια και θέλετε να αποφύγετε πολλές περισσότερες γραμμές κώδικα)</p>
<p class="MsoNormal"><o:p></o:p>Θα χρησιμοποιήσουμε την <span lang="EN-US">C</span># για να δούμε πώς αυτό πραγματοποιείται</p>
<p>
<p class="MsoNormal"></p>
<div class="xoopsCode" style="border: 1px solid ;"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">using</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> System;<o:p></o:p></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;"><br />using</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> System.Collections.Generic;<o:p></o:p></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;"><br />using</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> System.ComponentModel;<o:p></o:p></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;"><br />using</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> System.Data;<o:p></o:p></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;"><br />using</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> System.Drawing;<o:p></o:p></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;"><br />using</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> System.Text;<o:p></o:p></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;"><br />using</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> System.Windows.Forms;<o:p></o:p></span>  </div>
</p>
<div class="xoopsCode" style="border: 1px solid ;"> <span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">namespace</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> multi_panel<o:p></o:p></span>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;">{<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>  </span><span style="color: blue;">public</span> <span style="color: blue;">partial</span> <span style="color: blue;">class</span> <span style="color: teal;">Form1</span> : <span style="color: teal;">Form<o:p></o:p></span></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>    </span>{<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span><span style="color: green;">//</span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">Δημιουργία</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"> </span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">πίνακα</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"> </span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">αντικειμένων</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"> </span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">τύπου</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;"> PictureBox<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span><span style="color: teal;">PictureBox</span>[] m_pic = <span style="color: blue;">new</span> <span style="color: teal;">PictureBox</span>[5];<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>       </span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">public</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"> Form1()<o:p></o:p><br /><span>     </span>{<o:p></o:p><br /><span>          </span>InitializeComponent();<o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span><span style="color: green;">//Κάθε αντικείμενο του πίνακα &#8220;δείχνει&#8221; σε μία εικόνα<o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;">m_pic[0] = pictureBox1;<o:p></o:p><span></span><br />m_pic[1] = pictureBox2;<o:p></o:p><br /><span></span>m_pic[2] = pictureBox3;<o:p></o:p><br /><span></span>m_pic[3] = pictureBox4;<o:p></o:p><br /><span></span>m_pic[4] = pictureBox5;<o:p></o:p></span></p>
<p><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span>}</span></div>
<p>
<p class="MsoNormal"></p>
<div class="xoopsCode" style="border: 1px solid ;"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span style="color: blue;">private</span> <span style="color: blue;">void</span> bt_make_Click(<span style="color: blue;">object</span> sender, <span style="color: teal;">EventArgs</span> e)<o:p></o:p></span>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;;">{<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span><span style="color: green;">//Ο παρακάτω κώδικας καθορίζει την εικόνα του κάθε PictureBox<o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span><span style="color: green;">//και δημιουργεί ένα γεγονός Click για όλες της εικόνες<o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span><span style="color: green;">//Έτσι κάθε φορά που κάνετε Click σε μία εικόνα καλείται ο ίδιος κώδικας<o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>       </span><span style="color: blue;">int</span> c = 0;<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span><span style="color: blue;">foreach</span> (<span style="color: teal;">PictureBox</span> pc <span style="color: blue;">in</span> m_pic) <span style="color: green;">//διατρεξε όλες τις εικόνες που έχουν //οριστεί στον πίνακα m_pic<o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span>{<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>       </span>c++;<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span><span style="color: green;">//όρισε την είκονα του απο τον ένα αρχείο image1.jpg,image2.jpg,image3.jpg κ.τ.λ.<o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;">pc.BackgroundImage = <span style="color: teal;">Image</span>.FromFile(<span style="color: maroon;">&#8220;image&#8221;</span> + c.ToString() + <span style="color: maroon;">&#8220;.jpg&#8221;</span>);<o:p></o:p><br /><span>        </span><o:p></o:p><br /><span></span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: green;">//Δημιούργησε ένα συμβάν για κάθε αντικείμενο<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;">pc.Click += <span style="color: blue;">new</span> System.<span style="color: teal;">EventHandler</span>(<span style="color: blue;">this</span>.my_click);<o:p></o:p><br /><span><br />            </span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;;">}<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span>}<o:p></o:p></span></p>
</p></div>
</p>
<div class="xoopsCode" style="border: 1px solid ;">
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span><span style="color: green;">//κάλείται απο τα χειριστήρια που έχουν οριστεί να καλούν αυτή την συνάρτηση<o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">private</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> <span style="color: blue;">void</span> my_click(<span style="color: blue;">object</span> sender, System.<span style="color: teal;">EventArgs</span> e)<o:p></o:p><span> </span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;;">{<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span><span style="color: green;">//μετατροπή του αντικειμένου sender σε PictureBox<o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span><span></span><span style="color: teal;">PictureBox</span> pc = (<span style="color: teal;">PictureBox</span>)sender;<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span><span style="color: green;">//Διέτρεξε όλα τα αντικείμενα του πίνακα m_pic<o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">for</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> (<span style="color: blue;">int</span> a = 0; a &lt; m_pic.Length; a++)<o:p></o:p><br /><span>            </span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;;">{<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span> </span><span style="color: green;">//όταν βρεθεί πιο απο αυτά πατήθηκε εμφάνισε ένα σχετικό μήνυμα<o:p></o:p></span></span></p>
<p class="MsoNormal"><span style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span></span><span></span></span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: blue;">if</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> (pc == m_pic[a]) <span style="color: teal;">MessageBox</span>.Show(<span style="color: maroon;">&#8220;</span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: maroon;">Πατήθηκε</span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: maroon;"> </span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: maroon;">το</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: maroon;"> &#8220;</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"> + (a+1).ToString() + <span style="color: maroon;">&#8221; </span></span><span style="font-size: 10pt; font-family: &quot;courier new&quot;; color: maroon;">εικονίδιο</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;; color: maroon;">&#8220;</span><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;">);<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>            </span>}<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>        </span>}<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;"><span>    </span>}<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-size: 10pt; font-family: &quot;courier new&quot;;">}</span><span lang="EN-GB"><o:p></o:p></span></p>
</p></div>
<img src="http://www.digitalnews.gr/?ak_action=api_record_view&id=4029&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.digitalnews.gr/4029/%ce%b4%cf%85%ce%bd%ce%b1%ce%bc%ce%b9%ce%ba%cf%8c%cf%82-%cf%87%ce%b5%ce%b9%cf%81%ce%b9%cf%83%ce%bc%cf%8c%cf%82-components-%cf%83%cf%84%ce%bf-visual-studionet-20032005/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>.NET Framework</title>
		<link>http://www.digitalnews.gr/2037/net-framework</link>
		<comments>http://www.digitalnews.gr/2037/net-framework#comments</comments>
		<pubDate>Fri, 25 May 2007 11:00:00 +0000</pubDate>
		<dc:creator></dc:creator>
				<category><![CDATA[Προγραμματισμός]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[To .NET Framework είναι μία βιβλιοθήκη για υπολογιστές με λειτουργικό σύστημα Windows. Δίνει τη δυνατότητα στους προγραμματιστές να χρησιμοποιήσουν διάφορες εξελιγμένες λειτουργίες και η εφαρμογή του να είναι συμβατή με όλα τα συστήματα που υποστηρίζουν και έχουν εγκατεστημένο το .NET [...]]]></description>
			<content:encoded><![CDATA[<p class="MsoNoSpacing"><span lang="EN-US" >To</span> .<span lang="EN-US" >NET</span><span lang="EN-US"> </span><span lang="EN-US" >Framework</span><span lang="EN-US"> </span>είναι μία βιβλιοθήκη για υπολογιστές με λειτουργικό σύστημα <span lang="EN-US" >Windows</span>. Δίνει τη δυνατότητα στους προγραμματιστές να χρησιμοποιήσουν διάφορες εξελιγμένες λειτουργίες και η εφαρμογή του να είναι συμβατή με όλα τα συστήματα που υποστηρίζουν και έχουν εγκατεστημένο το .<span lang="EN-US" >NET</span><span lang="EN-US"> </span><span lang="EN-US" >Framework</span>. Εδώ θα αναλύσουμε την αρχιτεκτονική του.</p>
<p class="MsoNoSpacing"><span > </span>Η αρχιτεκτονική του .<span lang="EN-US" >NET</span><span lang="EN-US"> </span><span lang="EN-US" >Framework</span><span lang="EN-US"> </span>χωρίζεται σε 4 τμήματα όπως φαίνεται στο παρακάτω πίνακα. Το <span lang="EN-US" >Common</span><span lang="EN-US"> </span><span lang="EN-US" >Language</span><span lang="EN-US"> </span><span lang="EN-US" >Runtime</span> (<span lang="EN-US" >CLR</span>), ένα σύνολο από βιβλιοθήκες, ένα σύνολο από γλώσσες προγραμματισμού και από την <span lang="EN-US" >ASP</span>.<span lang="EN-US" >NET</span>.</p>
<div align="center">
<table cellspacing="0" cellpadding="0" border="1" style="border: medium none ; background: rgb(219, 229, 241) none repeat scroll 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial; border-collapse: collapse;" class="MsoTableGrid">
<tr >
<td width="366" valign="top" style="border: 1pt solid black; padding: 0in 5.4pt; width: 274.35pt;">
<p class="MsoNoSpacing"><span lang="EN-US" >Common   Language Runtime (CLR)<o:p></o:p></span></p>
</td>
</tr>
<tr >
<td width="366" valign="top" style="border-style: none solid solid; border-color: -moz-use-text-color black black; border-width: medium 1pt 1pt; padding: 0in 5.4pt; width: 274.35pt;">
<p class="MsoNoSpacing">Βιβλιοθήκες (<span lang="EN-US" >Class Libraries)<o:p></o:p></span></p>
</td>
</tr>
<tr >
<td width="366" valign="top" style="border-style: none solid solid; border-color: -moz-use-text-color black black; border-width: medium 1pt 1pt; padding: 0in 5.4pt; width: 274.35pt;">
<p class="MsoNoSpacing">Γλώσσες προγραμματισμού (<span lang="EN-US" >C</span>#,<span lang="EN-US" >VC</span>++,<span lang="EN-US" >VB</span>.<span lang="EN-US" >NET</span>,<span lang="EN-US" >Jscript</span>.<span lang="EN-US" >NET</span>)</p>
</td>
</tr>
<tr >
<td width="366" valign="top" style="border-style: none solid solid; border-color: -moz-use-text-color black black; border-width: medium 1pt 1pt; padding: 0in 5.4pt; width: 274.35pt;">
<p class="MsoNoSpacing"><span lang="EN-US" >ASP.NET<o:p></o:p></span></p>
</td>
</tr>
</table></div>
<p class="MsoNoSpacing"><o:p> </o:p></p>
<p class="MsoNoSpacing"><span style="color: black;">Το .</span><span lang="EN-US" style="color: black;">NET</span><span lang="EN-US" style="color: black;"> </span><span lang="EN-US" style="color: black;">Framework</span><span lang="EN-US" style="color: black;"> </span><span style="color: black;">σχεδιάστηκε ώστε να ικανοποιεί τρεις στόχους. Αρχικά έπρεπε να κάνει τις εφαρμογές των </span><span lang="EN-US" style="color: black;">Windows</span><span lang="EN-US" style="color: black;"> </span><span style="color: black;">πιο αξιόπιστες, βελτιώνοντας το βαθμό της ασφάλειάς τους. Δεύτερο, προοριζόταν για την απλούστευση της ανάπτυξης </span><span lang="EN-US" style="color: black;">Web</span><span lang="EN-US" style="color: black;"> </span><span style="color: black;">εφαρμογών και υπηρεσιών (</span><span lang="EN-US" style="color: black;">Web</span><span lang="EN-US" style="color: black;"> </span><span lang="EN-US" style="color: black;">services</span><span style="color: black;">), οι οποίες θα έτρεχαν και σε φορητές συσκευές. Τρίτο, το </span><span lang="EN-US" style="color: black;">Framework</span><span lang="EN-US" style="color: black;"> </span><span style="color: black;">σχεδιάστηκε για να παρέχει ένα σύνολο βιβλιοθηκών που μπορούσαν να λειτουργήσουν με πολλές γλώσσες.<o:p></o:p></span></p>
<p class="MsoNoSpacing"><span style="color: black;"><o:p> </o:p></span></p>
<p class="MsoNoSpacing"><strong><a name="_Toc167626774"><span lang="EN-US" >Common</span><span lang="EN-US"> </span></a><span ><span lang="EN-US" >Language</span><span lang="EN-US"> </span></span><span ><span lang="EN-US" >Runtime</span></span></strong></p>
<p class="MsoNoSpacing">Οι γλώσσες προγραμματισμού συνήθως αποτελούνται από έναν <span lang="EN-US" >compiler</span><span lang="EN-US"> </span>και ένα <span lang="EN-US" >runtime</span><span lang="EN-US"> </span>περιβάλλον. Ο <span lang="EN-US" >compiler</span><span lang="EN-US"> </span>μεταφράζει τον κώδικα σε εκτελέσιμο αρχείο που μπορεί να εκτελεστεί από τους χρήστες. Το <span lang="EN-US" >runtime</span><span lang="EN-US"> </span>περιβάλλον παρέχει ένα σύνολο υπηρεσιών του λειτουργικού συστήματος, στον εκτελέσιμο κώδικα. Οι υπηρεσίες αυτές είναι ενσωματωμένες σε ένα επίπεδο <span lang="EN-US" >runtime</span> (<span lang="EN-US" >Runtime</span><span lang="EN-US"> </span><span lang="EN-US" >Layer</span>) που επιτρέπει στον κώδικα να μην ασχολείται με λεπτομέρειες χαμηλού επιπέδου του λειτουργικού συστήματος. Τέτοιες λειτουργίες μπορεί να είναι η διαχείριση μνήμης, εγγραφή και ανάγνωση αρχείων κλπ. </p>
<p class="MsoNoSpacing">Πριν το .<span lang="EN-US" >NET</span><span lang="EN-US"> </span><span lang="EN-US" >Framework</span>, κάθε γλώσσα είχε και το δικό της <span lang="EN-US" >runtime</span><span lang="EN-US"> </span>περιβάλλον. Η <span lang="EN-US" >Visual</span><span lang="EN-US"> </span><span lang="EN-US" >Basic</span><span lang="EN-US"> </span>ερχόταν με το <span lang="EN-US" style="font-family: &quot;timesnewroman&quot;,&quot;serif&quot;;">MSVBVM</span><span style="font-family: &quot;timesnewroman&quot;,&quot;serif&quot;;">60.</span><span lang="EN-US" style="font-family: &quot;timesnewroman&quot;,&quot;serif&quot;;">DLL</span><span >, ενώ η </span><span lang="EN-US" >Visual</span><span lang="EN-US" > </span><span lang="EN-US" >C</span><span >++ με το </span><span lang="EN-US" style="font-family: &quot;timesnewroman&quot;,&quot;serif&quot;;">MSVCRT</span><span style="font-family: &quot;timesnewroman&quot;,&quot;serif&quot;;">.</span><span lang="EN-US" style="font-family: &quot;timesnewroman&quot;,&quot;serif&quot;;">DLL</span><span >. Το περιβάλλον ενσωματωνόταν με τον εκτελέσιμο κώδικα και έπρεπε να εγκατασταθεί στο μηχάνημα του χρήστη.</span></p>
<p class="MsoNoSpacing">Το βασικό πρόβλημα με τα περιβάλλοντα αυτά, βρίσκεται στο ότι ήταν σχεδιασμένα για χρήση με μόνο μία γλώσσα. Δεν μπορούσαν να χρησιμοποιηθούν λειτουργίες από το περιβάλλον μιας γλώσσας, σε μία άλλη.<span >  </span>Έτσι, ένας από τους βασικούς στόχους του .<span lang="EN-US" >NET</span><span lang="EN-US"> </span><span lang="EN-US" >Framework</span><span lang="EN-US"> </span>ήταν να ενοποιήσει τα <span lang="EN-US" >runtime</span><span lang="EN-US"> </span>περιβάλλοντα ώστε οι προγραμματιστές να μπορούν να χρησιμοποιούν μόνο ένα περιβάλλον. Έτσι η λύση που δόθηκε ήταν η <span lang="EN-US" >Common</span><span lang="EN-US"> </span><span lang="EN-US" >Language</span><span lang="EN-US"> </span><span lang="EN-US" >Runtime</span> (<span lang="EN-US" >CLR</span>). Το <span lang="EN-US" >CLR</span><span lang="EN-US"> </span>παρέχει δυνατότητες όπως διαχείριση μνήμης, ασφάλεια, διαχείριση λαθών κλπ, και όλα αυτά για κάθε γλώσσα που δουλεύει με το .<span lang="EN-US" >NET</span><span lang="EN-US"> </span><span lang="EN-US" >Framework</span>. </p>
<p class="MsoNoSpacing">Το <span lang="EN-US" >CLR</span><span lang="EN-US"> </span>επίσης επιτρέπει στις γλώσσες να συνεργάζονται μεταξύ τους. Μπορεί για παράδειγμα να δεσμευτεί ένα κομμάτι μνήμης με κώδικα γραμμένο στην <span lang="EN-US" >Visual</span><span lang="EN-US"> </span><span lang="EN-US" >Basic</span> .<span lang="EN-US" >NET</span><span lang="EN-US"> </span>και το ίδιο κομμάτι να ελευθερωθεί με κώδικα γραμμένο σε άλλη γλώσσα όπως η <span lang="EN-US" >C</span>#. </p>
<p class="MsoNoSpacing"><strong><a name="_Toc167626775"><span > </span>.</a><span ><span lang="EN-US" >NET</span><span lang="EN-US"> </span></span><span ><span lang="EN-US" >Class</span><span lang="EN-US"> </span></span><span ><span lang="EN-US" >Libraries</span></span></strong></p>
<p class="MsoNoSpacing">Οι προγραμματιστές αρέσκονται στο να δουλεύουν με κώδικα που ήδη έχει δοκιμαστεί και φαίνεται να λειτουργεί, όπως για παράδειγμα το <span lang="EN-US" >Win</span>32 <span lang="EN-US" >API</span><span lang="EN-US"> </span>και οι βιβλιοθήκες <span lang="EN-US" >MFC</span>. Η επαναχρησιμοποίηση κώδικα ήταν στόχος της προγραμματιστικής κοινότητας, από πολύ παλιά. Πολλές γλώσσες είχαν πρόσβαση σε κομμάτια κώδικα δοκιμασμένα, έτοιμα για εκτέλεση. Οι προγραμματιστές που χρησιμοποιούσαν την <span lang="EN-US" >Visual</span><span lang="EN-US"> </span><span lang="EN-US" >C</span>++ είχαν επωφεληθεί από βιβλιοθήκες όπως η <span lang="EN-US" >Microsoft</span><span lang="EN-US"> </span><span lang="EN-US" >Foundation</span><span lang="EN-US"> </span><span lang="EN-US" >Classes</span> (<span lang="EN-US" >MFC</span>) που τους επέτρεπαν να δημιουργήσουν εφαρμογές <span lang="EN-US" >Windows</span><span lang="EN-US"> </span>εύκολα και γρήγορα.<span >  </span>Ωστόσο, το ότι οι βιβλιοθήκες αυτές ήταν προορισμένες για μία μόνο γλώσσα σήμαινε ότι δεν μπορούσαν να χρησιμοποιηθούν με καμία άλλη γλώσσα. </p>
<p class="MsoNoSpacing">Το .<span lang="EN-US" >NET</span><span lang="EN-US"> </span><span lang="EN-US" >Framework</span><span lang="EN-US"> </span>παρέχει πολλές κλάσεις για να βοηθήσει τους προγραμματιστές στην επαναχρησιμοποίηση κώδικα. Οι βιβλιοθήκες .<span lang="EN-US" >NET</span><span lang="EN-US"> </span><span lang="EN-US" >Class</span><span lang="EN-US"> </span><span lang="EN-US" >Libraries</span><span lang="EN-US"> </span>περιέχουν κώδικα για προγραμματιστικά θέματα όπως νήματα, εγγραφή/ανάγνωση αρχείων, υποστήριξη βάσεων δεδομένων, μετατροπή σε <span lang="EN-US" >XML</span>, δομές δεδομένων όπως στοίβες και ουρές κλπ. Το καλύτερο σημείο βέβαια είναι το ότι η βιβλιοθήκη είναι διαθέσιμη σε κάθε γλώσσα που λειτουργεί με το .<span lang="EN-US" >NET</span><span lang="EN-US"> </span><span lang="EN-US" >Framework</span>.</p>
<p class="MsoNoSpacing"><strong><a name="_Toc167626776"><span > </span>.ΝΕΤ Γλώσσες προγραμματισμού</a></strong></p>
<p class="MsoNoSpacing">Το .<span lang="EN-US" >NET</span><span lang="EN-US"> </span><span lang="EN-US" >Framework</span><span lang="EN-US"> </span>παρέχει ένα σύνολο εργαλείων για να βοηθήσει στην κατασκευή κώδικα που λειτουργεί με αυτό. Η <span lang="EN-US" >Microsoft</span><span lang="EN-US"> </span>παρέχει ένα σύνολο γλωσσών που είναι ήδη συμβατές με το .<span lang="EN-US" >NET</span>. Η <span lang="EN-US" >C</span># είναι μία από αυτές. Επίσης δημιουργήθηκαν νέες εκδόσεις της <span lang="EN-US" >Visual</span><span lang="EN-US"> </span><span lang="EN-US" >Basic</span><span lang="EN-US"> </span>και της <span lang="EN-US" >Visual</span><span lang="EN-US"> </span><span lang="EN-US" >C</span>++ όπως και μία νέα έκδοση της <span lang="EN-US" >Jscript</span>.<span lang="EN-US" >NET</span>. Ένα πολύ σημαντικό στοιχείο είναι ότι οι συμβατές γλώσσες με το .<span lang="EN-US" >NET</span><span lang="EN-US"> </span>δεν είναι αποκλειστικά της <span lang="EN-US" >Microsoft</span>, αφού η εταιρία έχει δημοσιεύσει πλήρης τεκμηρίωση που δείχνει το πώς οι κατασκευαστές γλωσσών μπορούν να κάνουν τις γλώσσες τους συμβατές με το .<span lang="EN-US" >NET</span>, και διάφοροι κατασκευαστές το επιχείρησαν όπως η <span lang="EN-US" >COBOL</span><span lang="EN-US"> </span>και η <span lang="EN-US" >Perl</span>. Υπάρχουν αυτή τη στιγμή πάνω από 20 γλώσσες τρίτων κατασκευαστών που μπορούν και λειτουργούν στο περιβάλλον .<span lang="EN-US" >NET</span><span lang="EN-US"> </span><span lang="EN-US" >Framework</span>.<strong ><o:p></o:p></strong></p>
<p class="MsoNoSpacing"><strong><a name="_Toc167626777">2.5.4. </a><span ><span lang="EN-US" >ASP</span>.</span><span ><span lang="EN-US" >NET</span></span></strong></p>
<p class="MsoNoSpacing">Το <span lang="EN-US" >Internet</span><span lang="EN-US"> </span>αρχικών δημιουργήθηκε για την παροχή στατικού περιεχομένου στους <span lang="EN-US" >Web</span><span lang="EN-US"> </span><span lang="EN-US" >browsers</span>. Το <span lang="EN-US" >Active</span><span lang="EN-US"> </span><span lang="EN-US" >Server</span><span lang="EN-US"> </span><span lang="EN-US" >Pages</span> (<span lang="EN-US" >ASP</span>) δημιουργήθηκε από τη <span lang="EN-US" >Microsoft</span><span lang="EN-US"> </span>για να προσθέσει δυναμικές ιδιότητες στις <span lang="EN-US" >web</span><span lang="EN-US"> </span>σελίδες. Αυτό το πέτυχε με προγραμματισμό πίσω από την <span lang="EN-US" >web</span><span lang="EN-US"> </span>σελίδα, κυρίως σε <span lang="EN-US" >VB</span><span lang="EN-US"> </span><span lang="EN-US" >Script</span>. Όταν οι χρήστες επισκέπτονταν ένα <span lang="EN-US" >site</span><span lang="EN-US"> </span>τους ζητιόταν να επιβεβαιώσουν κάποιες πληροφορίες (είτε <span lang="EN-US" >manual</span><span lang="EN-US"> </span>είτε με χρήση <span lang="EN-US" >cookies</span>) και στη συνέχεια ένα <span lang="EN-US" >script</span><span lang="EN-US"> </span>δημιουργούσε τη σελίδα ανάλογα με τα στοιχεία που εισήγαγε ο χρήστης.</p>
<p class="MsoNoSpacing">Η <span lang="EN-US" >ASP</span>.<span lang="EN-US" >NET</span><span lang="EN-US"> </span>βελτιώνει κατά πολύ την αρχική <span lang="EN-US" >ASP</span>. Με την <span lang="EN-US" >ASP</span><span lang="EN-US"> </span>το <span lang="EN-US" >HTML</span><span lang="EN-US"> </span>και το <span lang="EN-US" >script</span><span lang="EN-US"> </span>βρίσκονταν στο ίδιο έγγραφο. Με την <span lang="EN-US" >ASP</span>.<span lang="EN-US" >NET</span><span lang="EN-US"> </span>το <span lang="EN-US" >script</span><span lang="EN-US"> </span>και το <span lang="EN-US" >HTML</span><span lang="EN-US"> </span>βρίσκονται σε διαφορετικά έγγραφα.</p>
<p class="MsoNoSpacing">Η <span lang="EN-US" >ASP</span>.<span lang="EN-US" >NET</span><span lang="EN-US"> </span>υποστηρίζει το <span lang="EN-US" >Web</span><span lang="EN-US"> </span><span lang="EN-US" >Forms</span>. Το <span lang="EN-US" >Web</span><span lang="EN-US"> </span><span lang="EN-US" >Forms</span><span lang="EN-US"> </span>επιτρέπει στον προγραμματιστή να σύρει και να αφήσει (<span lang="EN-US" >drag</span><span lang="EN-US"> </span><span lang="EN-US" >and</span><span lang="EN-US"> </span><span lang="EN-US" >drop</span>) <span lang="EN-US" >controls</span><span lang="EN-US"> </span>των φορμών, και να δημιουργηθεί αυτόματα ο κώδικας από πίσω, όπως ακριβώς σε μία τυπική εφαρμογή <span lang="EN-US" >Windows</span>.</p>
<p><span id="more-2037"></span></p>
<img src="http://www.digitalnews.gr/?ak_action=api_record_view&id=2037&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.digitalnews.gr/2037/net-framework/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Μεταφορά δεδομένων μεταξύ φορμών σε CSharp</title>
		<link>http://www.digitalnews.gr/4028/%ce%bc%ce%b5%cf%84%ce%b1%cf%86%ce%bf%cf%81%ce%ac-%ce%b4%ce%b5%ce%b4%ce%bf%ce%bc%ce%ad%ce%bd%cf%89%ce%bd-%ce%bc%ce%b5%cf%84%ce%b1%ce%be%cf%8d-%cf%86%ce%bf%cf%81%ce%bc%cf%8e%ce%bd-%cf%83%ce%b5-csharp</link>
		<comments>http://www.digitalnews.gr/4028/%ce%bc%ce%b5%cf%84%ce%b1%cf%86%ce%bf%cf%81%ce%ac-%ce%b4%ce%b5%ce%b4%ce%bf%ce%bc%ce%ad%ce%bd%cf%89%ce%bd-%ce%bc%ce%b5%cf%84%ce%b1%ce%be%cf%8d-%cf%86%ce%bf%cf%81%ce%bc%cf%8e%ce%bd-%cf%83%ce%b5-csharp#comments</comments>
		<pubDate>Mon, 21 May 2007 03:30:00 +0000</pubDate>
		<dc:creator>papvan</dc:creator>
				<category><![CDATA[Προγραμματισμός]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Μεταφορά δεδομένων μεταξύ φορμών σε Visual CSharp 2005 Μία από τις μεγαλύτερες «σπαζοκεφαλιές» του Visual Studio 2005 και γενικά του αντικειμενοστραφούς προγραμματισμού, είναι η κλήση ιδιοτήτων, controls και γενικά στοιχείων μιας φόρμας από μία άλλη. Λόγω της δομής της αντικειμενοστρέφειας, [...]]]></description>
			<content:encoded><![CDATA[<p align="center" class="MsoNormal" style="text-align: center;"><font size="+1"><strong>Μεταφορά δεδομένων μεταξύ φορμών σε </strong></font><font size="+1"><strong><span lang="EN-US">Visual</span><span lang="EN-US"> </span></strong></font><strong><font size="+1"><span lang="EN-US">CSharp</span></font><font size="+1"> 2005</font><o:p></o:p></strong></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Μία από τις μεγαλύτερες «σπαζοκεφαλιές» του Visual Studio 2005 και γενικά του αντικειμενοστραφούς προγραμματισμού, είναι η κλήση ιδιοτήτων, controls και γενικά στοιχείων μιας φόρμας από μία άλλη. Λόγω της δομής της αντικειμενοστρέφειας, η γνωστή από παλαιότερες γλώσσες προγραμματισμού τεχνική, της απευθείας κλήσης, απαγορεύεται. Για να γίνει λοιπόν μια τέτοια κλήση, πρέπει να χρησιμοποιηθεί μια σύνθετη τεχνική.</p>
<p class="MsoNormal"><o:p> </o:p>Έστω ότι έχω την Form1 και την Form2. Αν λοιπόν θέλω μέσα από την <span lang="EN-US">Form</span>2 να θέσω τιμή σε ένα <span lang="EN-US">TextBox</span> (έστω <span lang="EN-US">textBox</span>1) που ανήκει στην <span lang="EN-US">Form</span>1 πρέπει να ακολουθήσω την παρακάτω διαδικασία:</p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><strong>Βήμα 1:<o:p></o:p></strong></p>
<p class="MsoNormal">Αρχικά θα πρέπει να αλλάξω τον <span lang="EN-US">modifier</span><span lang="EN-US"> </span>του <span lang="EN-US">textBox</span>1 ή οποιουδήποτε στοιχείου θα θέλω να έχω πρόσβαση έξω από την φόρμα στην οποία ανήκει, σε <span lang="EN-US">public</span>. Π.χ. για το <span lang="EN-US">textBox</span>1 θα πρέπει να το κάνω:</p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family: &quot;courier new&quot;;">
<div style="border: 1px solid ;" class="xoopsCode">public TextBox textBox1;</div>
<p><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><em>Σημείωση: Το βήμα αυτό μπορεί να γίνει και από τις ιδιότητες (</em><em><span lang="EN-US">Properties</span>) του ίδιου του αντικειμένου (εδώ </em><em><span lang="EN-US">textBox</span>1).<o:p></o:p></em></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><strong>Βήμα </strong><strong><span lang="EN-US">2</span>:<o:p></o:p></strong></p>
<p class="MsoNormal">Πηγαίνω στην Form1 και προσθέτω στο event του κουμπιού που ανοίγει την Form2 το tmpObject.mainForm=this. Ο κώδικάς μου δηλαδή θα πρέπει να μοιάζει με το παρακάτω τμήμα:</p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><span lang="EN-US" style="font-family: &quot;courier new&quot;;"></span></p>
<div style="border: 1px solid ;" class="xoopsCode">Form2 tmpObject=new Form2();  <br />tmpObject.mainForm=this; //*******  <br />tmpObject.Show();</div>
<p class="MsoNormal"><span lang="EN-US" style="font-family: &quot;courier new&quot;;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal"><strong>Βήμα </strong><strong><span lang="EN-US">3</span>:<o:p></o:p></strong></p>
<p class="MsoNormal">Πηγαίνω στον κώδικα της Form2 και στην αρχή του γράφω:</p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-family: &quot;courier new&quot;;"></span></p>
<div style="border: 1px solid ;" class="xoopsCode">public Form1 mainForm; //*******  <br />public Form2()  <br />{     <br />      InitializeComponent();  <br />}</div>
<p class="MsoNormal"><span lang="EN-GB" style="font-family: &quot;courier new&quot;;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-GB"><o:p> </o:p></span></p>
<p class="MsoNormal">Στην ουσία, στο τμήμα αυτό του κώδικα δημιουργώ ένα αντικείμενο τύπου <span lang="EN-US">Form</span>1 μέσα στην <span lang="EN-US">Form</span>2, και το ονομάζω <span lang="EN-US">mainForm</span>. Αυτό ονομάζεται και αντικείμενο – «σκιά».</p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><strong>Βήμα 4:<o:p></o:p></strong></p>
<p class="MsoNormal">Σε οποιοδήποτε τμήμα της Form2 μπορώ να καλέσω στοιχεία ή controls της <span lang="EN-US">Form</span>1 χρησιμοποιώντας το ((<span lang="EN-GB">Form</span>1)<span lang="EN-GB">this</span>.<span lang="EN-GB">mainForm</span>).ότιθέλω.</p>
<p class="MsoNormal">π<span lang="EN-GB">.</span>χ<span lang="EN-GB">.</span></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><span lang="EN-GB" style="font-family: &quot;courier new&quot;;"></span></p>
<div style="border: 1px solid ;" class="xoopsCode">((Form1)this.mainForm).textBox1.Text=”Επιτέλους τα κατάφερα!!!”;</div>
<p><span lang="EN-US" style="font-family: &quot;courier new&quot;;"></span>
</p>
<p class="MsoNormal">Φαίνεται δύσκολο και θέλει εξοικείωση με τον αντικειμενοστρεφή προγραμματισμό. Υπάρχουν και άλλοι τρόποι να γίνει η μεταφορά δεδομένων μεταξύ φορμών, ένας άλλος αρκετά διαδεδομένος είναι η προσέγγιση του constructor. Δεν έχει όμως πολλές δυνατότητες, καθώς ο τρόπος που παρουσιάζεται παραπάνω μπορεί να καλύψει όλες τις πιθανές περιπτώσεις που ο προγραμματιστής μπορεί να χρειαστεί (π.χ. μεταφορά πολλών αντικειμένων, πινάκων κλπ).<br /><span lang="EN-US" style="font-family: &quot;courier new&quot;;"><o:p></o:p></span></p>
<p><span id="more-4028"></span></p>
<img src="http://www.digitalnews.gr/?ak_action=api_record_view&id=4028&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.digitalnews.gr/4028/%ce%bc%ce%b5%cf%84%ce%b1%cf%86%ce%bf%cf%81%ce%ac-%ce%b4%ce%b5%ce%b4%ce%bf%ce%bc%ce%ad%ce%bd%cf%89%ce%bd-%ce%bc%ce%b5%cf%84%ce%b1%ce%be%cf%8d-%cf%86%ce%bf%cf%81%ce%bc%cf%8e%ce%bd-%cf%83%ce%b5-csharp/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Έλεγχος εγκυρότητας Α.Φ.Μ.</title>
		<link>http://www.digitalnews.gr/2033/%ce%ad%ce%bb%ce%b5%ce%b3%cf%87%ce%bf%cf%82-%ce%b5%ce%b3%ce%ba%cf%85%cf%81%cf%8c%cf%84%ce%b7%cf%84%ce%b1%cf%82-%ce%b1%cf%86%ce%bc</link>
		<comments>http://www.digitalnews.gr/2033/%ce%ad%ce%bb%ce%b5%ce%b3%cf%87%ce%bf%cf%82-%ce%b5%ce%b3%ce%ba%cf%85%cf%81%cf%8c%cf%84%ce%b7%cf%84%ce%b1%cf%82-%ce%b1%cf%86%ce%bc#comments</comments>
		<pubDate>Fri, 30 Mar 2007 10:50:00 +0000</pubDate>
		<dc:creator>papvan</dc:creator>
				<category><![CDATA[Προγραμματισμός]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Όπως θα γνωρίζετε, ο Αριθμός Φορολογικού Μητρώου (Α.Φ.Μ.) στην Ελλάδα, δίδεται έπειτα από κάποιους υπολογισμούς. Υπάρχει δηλαδή ένας αλγόριθμους που περιγράφει τη λογική συνέπεια των αριθμών. Είναι λοιπόν πολλές φορές χρήσιμο προγραμματιστικά να ελέγχουμε την εγκυρότητα ενός Α.Φ.Μ. που θα [...]]]></description>
			<content:encoded><![CDATA[<div align="center"><img width="489" height="219" src="http://www.digitalnews.gr/uploads/img460c17704540e.jpg" alt="  " /></div>
<p>Όπως θα γνωρίζετε, ο Αριθμός Φορολογικού Μητρώου (Α.Φ.Μ.) στην Ελλάδα, δίδεται έπειτα από κάποιους υπολογισμούς. Υπάρχει δηλαδή ένας αλγόριθμους που περιγράφει τη λογική συνέπεια των αριθμών. Είναι λοιπόν πολλές φορές χρήσιμο προγραμματιστικά να ελέγχουμε την εγκυρότητα ενός Α.Φ.Μ. που θα πληκτρολογήσει ο χρήστης, για να τον γλιτώσουμε από πιθανά «τρεχάματα» (όλοι θα έχετε ζήσει τις ελληνικές δημόσιες υπηρεσίες) από λάθος εισαγωγή Α.Φ.Μ. Αυτό που θα κάνουμε λοιπόν εδώ είναι να δούμε βήμα-προς-βήμα τον τρόπο ελέγχου της εγκυρότητας ενός Α.Φ.Μ. που θα μας πληκτρολογήσει ο χρήστης, σε γλώσσα C# και χρησιμοποιώντας το Visual Studio 2005. Ο αλγόριθμος είναι αυτός που έχει σημασία και όχι τόσο η γλώσσα υλοποίησης, οπότε αν καταλάβετε τον κώδικα μπορείτε πολύ εύκολα και απλά να κάνετε τον δικό σας έλεγχο εγκυρότητας σε όποια γλώσσα θέλετε.</p>
<p>Ο τρόπος υπολογισμού είναι ο εξής:<br />Έστω ότι έχουμε το Α.Φ.Μ. 045678990.<br />Αντιστρέφουμε τον αριθμό και πολλαπλασιάζουμε ένα ένα τα ψηφία του, αθροίζοντας τα αποτελέσματα, σύμφωνα με το παρακάτω σκίτσο:</p>
<div align="center"><img src="http://www.digitalnews.gr/uploads/img460c175bdc76d.jpg" alt="  " /></div>
<p>Αν το άθροισμα και το αποτέλεσμα είναι ο ίδιος αριθμός τότε το Α.Φ.Μ. μας είναι έγκυρο, σε αντίθετη περίπτωση (δηλαδή το αποτέλεσμα είναι διαφορετικός από το άθροισμα είτε ακέραιος είτε δεκαδικός), το Α.Φ.Μ. που δόθηκε δεν είναι έγκυρο.</p>
<p>Ας δούμε πως μπορούμε υλοποιήσουμε προγραμματιστικά τον παραπάνω αλγόριθμο.</p>
<p>Δημιουργούμε ένα νέο αρχείο σε C#. Δημιουργούμε ένα textbox και ένα button, έστω τα textΒox1 και button1. Πηγαίνουμε στις παραμέτρους του textbox1 (επιλέγοντάς το και πατώντας F4) και δίνουμε MaxLength το 9 (τον αριθμό των ψηφίων του Α.Φ.Μ.).</p>
<p>Στη συνέχεια κάνουμε διπλό κλικ στο κουμπί button1. Στην οθόνη του κώδικα που εμφανίζεται ανεβαίνουμε στο πάνω μέρος της και προσθέτουμε κάτω από τα υπόλοιπα using το </p>
<div style="border: 1px solid ;" class="xoopsCode">using System.Text.RegularExpressions; </div>
<p>Δημιουργούμε μία μέθοδο με τον παρακάτω κώδικα, η οποία θα ελέγχει το αν αυτό που πληκτρολόγησε ο χρήστης είναι αριθμοί ή γράμματα.</p>
<div style="border: 1px solid ;" class="xoopsCode"> public bool isNumber(string param1)<br />        {<br />            Regex isNum = new Regex(&#8220;[^0-9]&#8220;);<br />            return !isNum.IsMatch(param1);<br />        }</div>
<p>Αφού τελειώσουμε με την προετοιμασία πάμε στο «ζουμί». Προσθέτουμε μέσα το button1_Click τον παρακάτω κώδικα:</p>
<div style="border: 1px solid ;" class="xoopsCode"> private void button1_Click(object sender, EventArgs e)<br />        {<br />            if (isNumber(textBox1.Text))<br />            {<br />                try<br />                {<br />                    int telestis = 2;<br />                    int sum = 0;<br />                    string afm = textBox1.Text;<br />                    for (int i = 7; i >= 0; i&#8211;)<br />                    {<br />                        sum += int.Parse(afm[i].ToString()) * telestis;<br />                        telestis = telestis * 2;<br />                    }<br />                    double check;<br />                    check = sum / 11;<br />                    check = check * 11;<br />                    if (sum == check)<br />                    {<br />                        MessageBox.Show(&#8220;Έγκυρο ΑΦΜ&#8221;, &#8220;www.digitalnews.gr&#8221;);<br />                    }<br />                    else<br />                    {<br />                        MessageBox.Show(&#8220;Μη έγκυρο ΑΦΜ&#8221;, &#8220;www.digitalnews.gr&#8221;);<br />                    }<br />                }<br />                catch<br />                {<br />                    MessageBox.Show(&#8220;Λάθος στην εισαγωγή δεδομένων&#8221;, &#8220;www.digitalnews.gr&#8221;);<br />                }<br />            }<br />            else<br />            {<br />                MessageBox.Show(&#8220;Παρακαλώ δώστε μόνο αριθμούς&#8221;, &#8220;www.digitalnews.gr&#8221;);<br />            }<br />        }</div>
<p><strong>Παρατηρήσεις:</strong></p>
<ul>
<li>Το αντικείμενο string μπορεί να χρησιμοποιηθεί και σαν πίνακας χαρακτήρων. Αλλά αν το χρησιμοποιήσουμε έτσι μετατρέπεται αυτόματα σε πίνακα char οπότε για να το κάνουμε integer το μετατρέπουμε από char σε string και μετά σε integer.</li>
</ul>
<p>
<ul>
<li>Η μεταβλητή check είναι double ενώ η sum είναι integer. Ως γνωστόν οι πράξεις του πολλαπλασιασμού και της πρόσθεσης ακέραιων αριθμών μας δίνουν μόνο ακέραιο αποτέλεσμα ενώ οι πράξη της διαίρεσης μπορεί να μας δώσει και δεκαδικό. Έτσι εξηγούνται οι παραπάνω επιλογές που κάναμε και εκεί βασίζεται και η λειτουργία του αλγόριθμου.</li>
</ul>
<p>
<ul>
<li>Όπως θα καταλάβατε παραλείπουμε έναν αριθμό (τον τελευταίο αριθμό του Α.Φ.Μ.) γιατί λόγω του τύπου πρέπει να τον πολλαπλασιάσουμε με 0 και να τον προσθέσουμε στο άθροισμα, κάτι που πάντα θα μας κάνει 0 και δεν θα αλλάζει τίποτα.</li>
</ul>
<p><span id="more-2033"></span><br />Μπορείτε να κατεβάσετε τον παραπάνω οδηγό σε video. Μπορείτε να το βρείτε στην κατηγορία Downloads και στην υποκατηγορία Video Tutorials, ή μπορείτε να ακολουθήσετε το παρακάτω link:<br />http://www.digitalnews.gr/modules/PDdownloads/visit.php?cid=4&amp;lid=12</p>
<img src="http://www.digitalnews.gr/?ak_action=api_record_view&id=2033&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.digitalnews.gr/2033/%ce%ad%ce%bb%ce%b5%ce%b3%cf%87%ce%bf%cf%82-%ce%b5%ce%b3%ce%ba%cf%85%cf%81%cf%8c%cf%84%ce%b7%cf%84%ce%b1%cf%82-%ce%b1%cf%86%ce%bc/feed</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Υπέρ..μαγευτικά γραφικά  (Νο 2)</title>
		<link>http://www.digitalnews.gr/4026/%cf%85%cf%80%ce%ad%cf%81%ce%bc%ce%b1%ce%b3%ce%b5%cf%85%cf%84%ce%b9%ce%ba%ce%ac-%ce%b3%cf%81%ce%b1%cf%86%ce%b9%ce%ba%ce%ac-%ce%bd%ce%bf-2</link>
		<comments>http://www.digitalnews.gr/4026/%cf%85%cf%80%ce%ad%cf%81%ce%bc%ce%b1%ce%b3%ce%b5%cf%85%cf%84%ce%b9%ce%ba%ce%ac-%ce%b3%cf%81%ce%b1%cf%86%ce%b9%ce%ba%ce%ac-%ce%bd%ce%bf-2#comments</comments>
		<pubDate>Thu, 01 Mar 2007 15:20:00 +0000</pubDate>
		<dc:creator></dc:creator>
				<category><![CDATA[Προγραμματισμός]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Σε όσους άρεσε το “Μαγευτικά γραφικά σε Visual Basic” στην κατηγορία tutorial για αρχάριους η νέα έκδοση θα τους ενθουσιάσει, ενώ για τους πιο απαιτητικούς θα τους ικανοποιήσει. Σε αυτό το άρθρο δεν θα παρουσιάσω τον κώδικα αφού είναι σχεδόν [...]]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal"><span lang="EL">Σε όσους άρεσε το <a href="http://www.digitalnews.gr/modules/smartsection/item.php?itemid=25">“Μαγευτικά γραφικά σε </a></span><a href="http://www.digitalnews.gr/modules/smartsection/item.php?itemid=25">Visual<span> </span>Basic</a><span lang="EL"><a href="http://www.digitalnews.gr/modules/smartsection/item.php?itemid=25">”</a> στην κατηγορία </span>tutorial<span> <span lang="EL">για αρχάριους η νέα έκδοση θα τους ενθουσιάσει, ενώ για τους πιο απαιτητικούς θα τους ικανοποιήσει. Σε αυτό το άρθρο δεν θα παρουσιάσω τον κώδικα αφού είναι σχεδόν ίδιος με αυτόν της πρώτης έκδοσης. Θα αναφερθώ όμως στο δύσκολο κομμάτι του κώδικα της παραγωγής γραφικών. Με αυτόν τον κώδικα ίσως κατανοήσετε την λειτουργία πολλών </span></span>plug<span lang="EL">-</span>ins<span lang="EL"> (</span>AVS<span lang="EL">) σε </span>media<span lang="EL"> εφαρμογές όπως </span>winamp<span lang="EL">,</span>media<span> </span>player<span> <span lang="EL">κτλ <o:p></o:p></span></span></p>
<p><span id="more-4026"></span>
<p class="MsoNormal"><strong><span lang="EL">Κώδικας σε </span>VB6</strong></p>
<p class="MsoNormal">
<p class="MsoNormal"><strong>
<div style="border: 1px solid ;" class="xoopsCode">Private Sub shows()
<p class="MsoNormal">Pic.AutoRedraw = True</p>
<p class="MsoNormal"><o:p></o:p>With pt</p>
<p class="MsoNormal"><o:p> </o:p>bb<span lang="EL"> = </span>QUALITY<span lang="EL">.</span>ListIndex<span> <span lang="EL">+ 1 ‘ποιότητα-ακρίβεια γραφικών (αντιστραμμένη)<o:p></o:p></span></span></p>
<p class="MsoNormal">If bb &lt; 1 Then bb = 1<br /><o:p></o:p>Pic.DrawWidth = bb * 5 &#8211; 1</p>
<p class="MsoNormal"><o:p> </o:p>If Pic.DrawWidth &lt; 5 Then Pic.DrawWidth = 5</p>
<p class="MsoNormal"><o:p> </o:p>For Y = 0 To 100 Step bb<br />For X = 0 To 100 Step bb</p>
<p class="MsoNormal"><o:p> </o:p><br />If .rise = 0 Then .rise = 1.5<br />If .spread = 0 Then .spread = 100</p>
<p class="MsoNormal"><o:p> </o:p>r = 0: g = 0: b = 0</p>
<p class="MsoNormal">For s = 0 To .maxs &#8211; 1</p>
<p class="MsoNormal"><span lang="EL"><o:p> </o:p><br />‘ακτίνα του pixel από το κέντρο του αντικειμένου </span><span lang="EL" style="font-family: tahoma;"><o:p></o:p></span><br />rd = Sqr((.X(s) &#8211; X) ^ 2 + (.Y(s) &#8211; Y) ^ 2) <span style="font-family: tahoma;"><span> </span></span></p>
</p></div>
<p></strong></p>
<p class="MsoNormal">και τώρα το ζουμί&#8230;</p>
<p class="MsoNormal">
<div style="border: 1px solid ;" class="xoopsCode"><strong>   <span lang="EL">‘ένταση του χρώματος κάθε </span>pixel<span lang="EL"> από κάθε αντικείμενο<o:p></o:p></span></strong>
<p class="MsoNormal"><strong><span lang="EL"><o:p></o:p>Αυτό εξαρτάται από το είδος των γραφικών που θέλουμε<o:p></o:p></span></strong></p>
<p class="MsoNormal"><strong><span lang="EL"><o:p></o:p>&#8216;</span>sfaires<span lang="EL"> (εξαρτάται από την ακτίνα άρα κυκλικός σχηματισμός)<o:p></o:p></span></strong></p>
<p class="MsoNormal"><strong>If types.ListIndex = 0 Then ed = 1 / (rd ^ .rise / .spread + 1)</strong></p>
<p class="MsoNormal"><strong><o:p> </o:p><br /><span lang="EL">&#8216;</span>diadromi<span> </span>asteras<span lang="EL"> (σύνθετος τύπος: ακτίνα, </span>x<span lang="EL">,</span>y<span lang="EL">, ημίτονα, συνημίτονα)<o:p></o:p></span>If types.ListIndex = 1 Then</strong></p>
<p class="MsoNormal"><strong>ed = 1 / (rd ^ (.rise) / (.spread * 0.6) + (Abs(Cos(Y / 10) + Sin((X / 10)))))</strong></p>
<p class="MsoNormal"><strong>End If</strong></p>
<p class="MsoNormal"><strong><o:p> </o:p><br /><span lang="EL">&#8216;</span>ritidwti<span lang="EL"> (σύνθετος τύπος: ακτίνα, </span>x<span lang="EL">,</span>y<span lang="EL">, ημίτονα, συνημίτονα και συνδυασμός αυτών )<o:p></o:p></span>If types.ListIndex = 2 Then<br />RRR = 10 * Sin(Y / 20) * Cos(X / 20) * Cos(X * Y / 200)<br />ed = 1 / (Abs(rd + RRR) ^ .rise / .spread + 1)<br />End If</strong></p>
<p class="MsoNormal"><strong><o:p> </o:p><br /><span lang="EL">&#8216;</span>psyhedelic<span lang="EL"> (πολλαπλός συνδυασμός x,y, ακτίνας, ημιτόνων, συνημίτονων<span>  </span>)<o:p></o:p></span></strong></p>
<p class="MsoNormal"><strong>If types.ListIndex = 3 Then<br />RRR = 10 * ((Sin(Y / <img src='http://www.digitalnews.gr/wp-includes/images/smilies/icon_cool.gif' alt='8)' class='wp-smiley' /> * Cos(X / 16)) * 3 + 2 * Cos((X * Y) / (1200)))</strong></p>
<p class="MsoNormal"><strong><o:p></o:p>din = Abs(rd &#8211; RRR) ^ (.rise + RRR / 50)<br />spr = ((2 / RRR + 0.01) * .spread)<br />ed = 1 / (din / spr + 0.01)<br />End If</strong></p>
</p></div>
</p>
<p class="MsoNormal"><strong>
<div style="border: 1px solid ;" class="xoopsCode">   <span lang="EL">‘πολύπλεξη χρωμάτων<o:p></o:p></span>
<p class="MsoNormal"><span lang="EL"><o:p> </o:p></span>r = r + .c_r(s) * ed<br />g = g + .c_g(s) * ed<br />b = b + .c_b(s) * ed<br /><o:p></o:p>Next s</p>
<p class="MsoNormal"><span lang="EL"><o:p> </o:p>‘περιορισμοί χρωμάτων<o:p><br /> </o:p></span>If r > 255 Then r = 255<br />If g > 255 Then g = 255<br />If b > 255 Then b = 255<br /><o:p></o:p></p>
<p class="MsoNormal"><o:p></o:p>If r &lt; 0 Then r = 0<br />If g &lt; 0 Then g = 0<br />If b &lt; 0 Then b = 0<br /><o:p></o:p>Pic.PSet (X, Y), RGB(r, g, b)</p>
<p class="MsoNormal"><o:p></o:p>Next X<br />Next Y<br /><o:p></o:p>End With</p>
<p class="MsoNormal"><o:p></o:p>Pic.AutoRedraw = False</p>
<p class="MsoNormal"><o:p></o:p>End Sub</p>
</p></div>
<p></strong></p>
<p class="MsoNormal"><strong>Είπε κανείς τίποτα ; <img src="http://www.digitalnews.gr/uploads/smil3dbd4dcd7b9f4.gif" alt=" " /></strong></p>
<img src="http://www.digitalnews.gr/?ak_action=api_record_view&id=4026&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.digitalnews.gr/4026/%cf%85%cf%80%ce%ad%cf%81%ce%bc%ce%b1%ce%b3%ce%b5%cf%85%cf%84%ce%b9%ce%ba%ce%ac-%ce%b3%cf%81%ce%b1%cf%86%ce%b9%ce%ba%ce%ac-%ce%bd%ce%bf-2/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Μαγευτικά γραφικά σε Visual Basic</title>
		<link>http://www.digitalnews.gr/2025/%ce%bc%ce%b1%ce%b3%ce%b5%cf%85%cf%84%ce%b9%ce%ba%ce%ac-%ce%b3%cf%81%ce%b1%cf%86%ce%b9%ce%ba%ce%ac-%cf%83%ce%b5-visual-basic</link>
		<comments>http://www.digitalnews.gr/2025/%ce%bc%ce%b1%ce%b3%ce%b5%cf%85%cf%84%ce%b9%ce%ba%ce%ac-%ce%b3%cf%81%ce%b1%cf%86%ce%b9%ce%ba%ce%ac-%cf%83%ce%b5-visual-basic#comments</comments>
		<pubDate>Sat, 24 Feb 2007 04:10:00 +0000</pubDate>
		<dc:creator></dc:creator>
				<category><![CDATA[Προγραμματισμός]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Στον παρακάτω κώδικα θα δείτε πώς μπορούμε να φτιάξουμε υπέροχα γραφικά χρησιμοποιώντας απλές συναρτήσεις της Visual basic 6. Όπως φαίνεται στην εικόνα υπάρχουν πέντε σφαίρες με διαφορετικά χρώματα η κάθε μία των οποίων το χρώμα αποσβένει σταδιακά . Επίσης όπως [...]]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal" style="text-align: justify;"><span lang="EL">Στον παρακάτω κώδικα θα δείτε πώς μπορούμε να φτιάξουμε υπέροχα γραφικά χρησιμοποιώντας απλές συναρτήσεις της </span>Visual<span> </span>basic<span lang="EL"> 6. Όπως φαίνεται στην εικόνα υπάρχουν πέντε σφαίρες με διαφορετικά χρώματα η κάθε μία των οποίων το χρώμα αποσβένει σταδιακά . Επίσης όπως διακρίνετε, στις περιοχές που βρίσκονται δύο ή παραπάνω σφαίρες υπάρχει συνδυασμός των χρωμάτων τους. Στο πρόγραμμα έχει ενσωματωθεί και<span>  </span>κώδικας για την κίνηση αυτών των σφαιρών</span></p>
<p>
<p class="MsoNormal" style="text-align: justify;">μπορείτε να δείτε μια περισσότερο θεαματική έκδοση του προγράμματος στα tuttorial για προχώρημένους (πατήστε <a href="http://www.digitalnews.gr/modules/tutproxorim/item.php?itemid=26">εδώ</a>)</p>
<p class="MsoNormal" style="text-align: justify;"><span lang="EL"><o:p></o:p></span></p>
<p><span id="more-2025"></span>
<p class="MsoNormal"><strong><span lang="EL">Κώδικας σε </span>VB6</strong></p>
<p class="MsoNormal" style="text-align: justify;"><o:p> </o:p><br /><span lang="EL">Δομή δεδομένων για πληροφορίες της κάθε σφαίρας όπως ταχύτητα, θέση, χρώμα (τύπος </span>RGB<span> </span>R<span lang="EL">=</span>red<span lang="EL">,</span>G<span lang="EL">=</span>green<span lang="EL">,</span>B<span lang="EL">=</span>blue<span lang="EL">), μέγιστος αριθμός ενεργών σφαιρών, ρυθμός απόσβεσης χρώματος (</span>rise<span lang="EL">,</span>spread<span lang="EL">). Ο αριθμός 10 δηλώνει τον μέγιστο αριθμό σφαιρών για το πρόγραμμα</span></p>
<p>
<p class="MsoNormal" style="text-align: justify;"></p>
<div style="border: 1px solid ;" class="xoopsCode">Private Type point_fix<br />u_x(10) As Double<br />u_y(10) As Double<br />X(10) As Double<br />Y(10) As Double<br />c_r(10) As Integer<br />c_g(10) As Integer<br />c_b(10) As Integer<br />maxs As Integer<br />rise As Double<br />spread As Double<br />End Type<span lang="EL"><o:p></o:p></span>            </div>
</p>
<p>
<p class="MsoNormal" style="text-align: justify;"></p>
<div style="border: 1px solid ;" class="xoopsCode"> <span lang="EL">Δήλωση σφαιρών<o:p></o:p></span><br /> Private pt As point_fix<span lang="EL"><o:p><br /> </o:p></span>
<p class="MsoNormal"><span lang="EL">Τρέχων αριθμός σφαίρας (για αλλαγή θέση από τον χρήστη)<o:p></o:p></span><br /> Private cur</p>
</div>
<p class="MsoNormal" style="text-align: justify;"><span lang="EL"></span></p>
<p class="MsoNormal" style="text-align: justify;"><span lang="EL">Κύρια συνάρτηση υπολογισμού των γραφικών</span></p>
<div style="border: 1px solid ;" class="xoopsCode">Private Sub shows()
<p class="MsoNormal"><span lang="EL"><o:p></o:p></span>Pic.AutoRedraw = True<br /><o:p></o:p>With pt<br /><o:p></o:p>bb<span lang="EL"> = 3 ‘βημα γραφικών (για τα </span>Pixel<span lang="EL">)<o:p></o:p></span></p>
<p class="MsoNormal"><o:p> </o:p><span lang="EL">‘Η εικόνα έχει οριστεί σε κατάσταση (100 </span>x<span> <span lang="EL">100)<span>  </span>οπότε οι θέσεις είναι 100 για τον άξ</span></span>o<span lang="EL">να χ και </span>y<span lang="EL"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EL"><o:p> </o:p></span><br />For Y = 1 To 100 Step bb<br />For X = 1 To 100 Step bb</p>
<p class="MsoNormal"><o:p> </o:p><span lang="EL">‘αν δεν έχει οριστεί η εξομάλυνση ορίζεται εδώ<o:p></o:p></span></p>
<p class="MsoNormal">If .rise = 0 Then .rise = 1.5<br />If .spread = 0 Then .spread = 100<br /><o:p></o:p>r = 0: g = 0: b = 0</p>
<p class="MsoNormal"><span lang="EL"><o:p> </o:p>‘υπολογισμός του χρώματος για κάθε </span>pixel<span lang="EL"> από την επιρροή κάθε σφαίρας<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EL"><o:p></o:p></span>For s = 0 To .maxs &#8211; 1</p>
<p class="MsoNormal"><span lang="EL"><o:p> </o:p>‘ακτίνα (απόσταση) του τρέχον </span>pixel<span> <span lang="EL">από το κέντρο της σφαίρας<o:p></o:p></span></span></p>
<p class="MsoNormal"><span lang="EL"><o:p> </o:p></span>rd = Sqr((.X(s) &#8211; X) ^ 2 + (.Y(s) &#8211; Y) ^ 2) </p>
<p class="MsoNormal"><span lang="EL"><o:p> </o:p>‘ένταση του χρώματος <o:p></o:p></span></p>
<p class="MsoNormal">ed = 1 / (rd ^ .rise / .spread + 1)</p>
<p class="MsoNormal"><span lang="EL"><o:p> </o:p>‘πολυπλεξη χρωμάτων<o:p></o:p></span></p>
<p class="MsoNormal">r = r + .c_r(s) * ed<br />g = g + .c_g(s) * ed<br />b = b + .c_b(s) * ed</p>
<p class="MsoNormal"><o:p></o:p>Next s<br /><span lang="EL"><o:p></o:p>‘διόρθωση χρωμάτων<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EL"><o:p></o:p></span>If r > 255 Then r = 255<br />If g > 255 Then g = 255<br />If b > 255 Then b = 255</p>
<p class="MsoNormal"><o:p></o:p>If r &lt; 0 Then r = 0<br />If g &lt; 0 Then g = 0<br />If b &lt; 0 Then b = 0</p>
<p class="MsoNormal"><o:p></o:p><span lang="EL">‘εμφάνιση του </span>pixel<br />Pic.PSet (X, Y), RGB(r, g, b)</p>
<p class="MsoNormal"><o:p></o:p>Next X<br />Next Y<br /><o:p></o:p>End With</p>
<p class="MsoNormal"><o:p> </o:p><span lang="EL">Pic.AutoRedraw = False<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EL"><o:p> </o:p>End Sub</span></p>
</p></div>
<p class="MsoNormal" style="text-align: justify;">
<p class="MsoNormal"><span lang="EL">κίνηση σφαιρών<o:p></o:p></span></p>
<p>
<p class="MsoNormal" style="text-align: justify;"></p>
<div style="border: 1px solid ;" class="xoopsCode">Private Sub Command1_Click()
<p class="MsoNormal"><o:p> </o:p>’20 <span lang="EL">καρέ</span><br />For ee = 1 To 20</p>
<p class="MsoNormal"><span lang="EL"><o:p></o:p></span>With pt<br /><span lang="EL"><o:p></o:p>‘υπολογισμός νέων θέσεων όλων των σφαιρών<o:p></o:p></span></p>
<p class="MsoNormal">For a = 0 To .maxs<br /><o:p></o:p>.X(a) = .X(a) + .u_x(a)<br />.Y(a) = .Y(a) + .u_y(a)<br /><span lang="EL"><o:p></o:p>‘αν είναι εκτός ορίων της εικόνας αντιστροφή ταχυτήτων<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EL"><o:p></o:p></span>If .X(a) &lt; 0 Then .u_x(a) = Abs(.u_x(a))<br />If .Y(a) &lt; 0 Then .u_y(a) = Abs(.u_y(a))</p>
<p class="MsoNormal"><o:p></o:p>If .X(a) > Pic.ScaleWidth Then .u_x(a) = -Abs(.u_x(a))</p>
<p class="MsoNormal">If .Y(a) > Pic.ScaleHeight Then .u_y(a) = -Abs(.u_y(a))<br /><o:p></o:p>Next a</p>
<p class="MsoNormal"><o:p> </o:p><span lang="EL">‘εμφάνιση του καρέ<o:p></o:p></span><br />shows<br /><o:p></o:p>End With<br /><o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p>Next</p>
<p class="MsoNormal"><o:p></o:p><span lang="EL"><br />End Sub<o:p></o:p></span></p>
</p></div>
</p>
<p class="MsoNormal" style="text-align: justify;">
<p class="MsoNormal"><span lang="EL">‘αρχικοποίηση δεδομένων<o:p></o:p></span></p>
<div style="border: 1px solid ;" class="xoopsCode"> Private Sub Form_Load()
<p class="MsoNormal"><o:p> </o:p>Pic.Scale (0, 0)-(100, 100)</p>
<p><o:p></o:p>Pic.DrawWidth = 14 <br /><o:p></o:p>With pt<br />.maxs = 5</p>
<p class="MsoNormal"><o:p> </o:p><span lang="EL">‘τυχαίες θέσεις των σφαιρών<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EL"><o:p></o:p></span>For a = 0 To 4<br />.X(a) = Rnd * 100<br />.Y(a) = Rnd * 100<br />Next a</p>
<p class="MsoNormal"><span lang="EL"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EL"><o:p></o:p>‘σφαίρα 1</span><span lang="EL"> </span><span lang="EL">χρώμα μπλε<o:p></o:p></span><br />.c_b(0) = 255</p>
<p class="MsoNormal"><span lang="EL"><o:p> </o:p><br />‘σφαίρα 2 χρώμα κόκκινο<o:p></o:p><br />.</span>c<span lang="EL">_</span>r<span lang="EL">(1) = 255<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EL"><o:p> </o:p><br />‘σφαίρα 3 χρώμα κίτρινο<o:p></o:p><br />.</span>c<span lang="EL">_</span>r<span lang="EL">(2) = 255<o:p></o:p></span><br />.c_g(2) = 255</p>
<p class="MsoNormal"><span lang="EL"><o:p> </o:p><br />‘σφαίρα 4 χρώμα πράσινο<o:p></o:p><br />.</span>c<span lang="EL">_</span>g<span lang="EL">(3) = 255<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EL"><o:p> </o:p><br />‘σφαίρα 5 χρώμα άσπρο<o:p></o:p><br />.</span>c<span lang="EL">_</span>g<span lang="EL">(4) = 255<o:p></o:p></span><br />.c_r(4) = 255<br />.c_b(4) = 255</p>
<p class="MsoNormal"><o:p></o:p><span lang="EL">‘τυχαίες ταχύτητες<o:p></o:p></span></p>
<p class="MsoNormal">For a = 0 To .maxs<br />.u_x(a) = 5 &#8211; Rnd * 10<br />.u_y(a) = 5 &#8211; Rnd * 10<br />Next a</p>
<p class="MsoNormal"><o:p> </o:p><br />End With<br />End Sub<span lang="EL"><o:p></o:p></span></p>
</p></div>
<p class="MsoNormal" style="text-align: justify;">Διασκεδάστε το <img src="http://www.digitalnews.gr/uploads/smil3dbd4daabd491.gif" alt=" " /><br /><span lang="EL"><o:p></o:p></span></p>
<img src="http://www.digitalnews.gr/?ak_action=api_record_view&id=2025&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.digitalnews.gr/2025/%ce%bc%ce%b1%ce%b3%ce%b5%cf%85%cf%84%ce%b9%ce%ba%ce%ac-%ce%b3%cf%81%ce%b1%cf%86%ce%b9%ce%ba%ce%ac-%cf%83%ce%b5-visual-basic/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Προγράμματα που γίνονται screen saver (Εδώ ο πηγαίος κώδικας)</title>
		<link>http://www.digitalnews.gr/4025/%cf%80%cf%81%ce%bf%ce%b3%cf%81%ce%ac%ce%bc%ce%bc%ce%b1%cf%84%ce%b1-%cf%80%ce%bf%cf%85-%ce%b3%ce%af%ce%bd%ce%bf%ce%bd%cf%84%ce%b1%ce%b9-screen-saver-%ce%b5%ce%b4%cf%8e-%ce%bf-%cf%80%ce%b7%ce%b3%ce%b1</link>
		<comments>http://www.digitalnews.gr/4025/%cf%80%cf%81%ce%bf%ce%b3%cf%81%ce%ac%ce%bc%ce%bc%ce%b1%cf%84%ce%b1-%cf%80%ce%bf%cf%85-%ce%b3%ce%af%ce%bd%ce%bf%ce%bd%cf%84%ce%b1%ce%b9-screen-saver-%ce%b5%ce%b4%cf%8e-%ce%bf-%cf%80%ce%b7%ce%b3%ce%b1#comments</comments>
		<pubDate>Thu, 15 Feb 2007 12:40:00 +0000</pubDate>
		<dc:creator></dc:creator>
				<category><![CDATA[Προγραμματισμός]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Θα θέλατε ένα οποιοδήποτε πρόγραμμα που δεν είναι screen saver να συμπεριφέρεται σαν screen saver; Αν ναι σας παρουσιάζω των κώδικα για το πώς μπορείτε να το επιτύχετε. Εκτός του κώδικα θα χρειαστείτε και μερικές οδηγίες που περιγράφουμε στο Tuttorials [...]]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal">Θα θέλατε ένα οποιοδήποτε πρόγραμμα που δεν είναι <span lang="EN-US">screen</span><span lang="EN-US"> </span><span lang="EN-US">saver</span><span lang="EN-US"> </span>να συμπεριφέρεται σαν <span lang="EN-US">screen</span><span lang="EN-US"> </span><span lang="EN-US">saver</span>; Αν ναι σας παρουσιάζω των κώδικα για το πώς μπορείτε να το <span style="color: black;">επιτύχετε. </span></p>
<p class="MsoNormal"><span style="color: black;"></span></p>
<p>
<p class="MsoNormal"></p>
<p class="MsoNormal">
<p class="MsoNormal"><span style="color: black;"><br /><o:p></o:p></span></p>
<p class="MsoNormal"><span class="tutproxorimmodulename"><span lang="EN-US" style="color: black;"></span><span style="color: black;"><o:p></o:p></span></span></p>
<p>    <span lang="EN-US" style="font-size: 12pt; font-family: &quot;times new roman&quot;; color: black;"> </span><span id="more-4025"></span>
<p class="MsoNormal"><span style="color: black;">Εκτός του κώδικα θα χρειαστείτε και μερικές οδηγίες που περιγράφουμε στο<span>  </span></span><span lang="EN-US" style="color: black;"><o:p></o:p></span></p>
<p>   <span lang="EN-US" style="font-size: 12pt; font-family: &quot;times new roman&quot;; color: black;"><span></span></span>
<p class="MsoNormal"><span class="tutproxorimmodulename"><span style="color: black;"><a href="http://www.digitalnews.gr/modules/tutproxorim/"><span style="color: black; text-decoration: none;"></span></a></span></span><a href="item.php?itemid=24"><span class="tutproxorimmodulename"><span lang="EN-US" style="color: black;">Tuttorials</span><span lang="EN-US" style="color: black;"> </span><span style="color: black;">για προχωρημένους > Προγράμματα > Κάντε ένα οποιοδήποτε αρχείο… </span></span><span class="tutproxorimmodulename"><span lang="EN-US" style="color: black;">screen</span><span lang="EN-US" style="color: black;"> </span></span><span class="tutproxorimmodulename"><span lang="EN-US" style="color: black;">saver</span></span></a></p>
<p class="MsoNormal"><a href="item.php?itemid=24">  </a></p>
<p class="MsoNormal"><span style="color: black;">Παρακάτω παρουσιάζω τον κώδικα γραμένο σε </span><span lang="EN-US" style="color: black;"></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;">Visual</span><span lang="EN-US" style="color: black;"> </span><span lang="EN-US" style="color: black;">Basic</span><span style="color: black;"> 6</span></p>
<p>
<p class="MsoNormal"></p>
<div style="border: 1px solid ;" class="xoopsCode"> <span lang="EN-US" style="color: black;">Private Declare Function GetCursorPos Lib &#8220;user32&#8243; (lpPoint As POINTAPI) As Long<o:p></o:p></span>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><o:p> </o:p>Private Declare Function FindWindow Lib &#8220;user32&#8243; Alias &#8220;FindWindowA&#8221; _<o:p></o:p><br /><span> </span>(ByVal lpClassName As String, ByVal lpWindowName As String) As Long<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><o:p> </o:p>Private Declare Function PostMessage Lib &#8220;user32&#8243; Alias &#8220;PostMessageA&#8221; _<o:p></o:p><br /><span> </span>(ByVal hwnd As Long, ByVal wMsg As Long, _<o:p></o:p><br /><span> </span>ByVal wParam As Long, lParam As Any) As Long<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><o:p> </o:p>Const w_close = 16<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><o:p> </o:p><br />Private Type POINTAPI<o:p></o:p><br />X As Long<o:p></o:p><br />Y As Long<o:p></o:p><br />End Type<o:p></o:p></span></p>
</p></div>
</p>
<p class="MsoNormal"><span style="color: black;">
<div style="border: 1px solid ;" class="xoopsCode"><span lang="EN-US" style="color: black;">Dim St As POINTAPI<o:p></o:p></span><span lang="EN-US" style="color: black;"><br />Dim St_old As POINTAPI<o:p></o:p></span><span lang="EN-US" style="color: black;"><o:p></o:p>Dim title_apl As String<o:p></o:p></span>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><o:p></o:p>Private Sub Form_Load()<o:p></o:p><br />ar$ = GetSetting(&#8220;digit_scr_saver&#8221;, &#8220;data&#8221;, &#8220;path_file&#8221;)<o:p></o:p><br />title_apl = GetSetting(&#8220;digit_scr_saver&#8221;, &#8220;data&#8221;, &#8220;param_file&#8221;)<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><o:p> </o:p>If ff.FileExists(ar$) = False Then  End<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><o:p></o:p>If title_apl = &#8220;&#8221; Then  End<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><span></span><o:p></o:p>Shell ar$, vbNormalNoFocus<o:p></o:p><br />Call GetCursorPos(St_old)<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><o:p> </o:p>Timer1.Enabled = True<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><o:p> </o:p>End Sub<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;">Private Sub Timer1_Timer()<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><o:p></o:p><span></span>Call GetCursorPos(St)<o:p></o:p>If St.X &lt;> St_old.X Or St.Y &lt;> St_old.Y Then<o:p></o:p><br />close_application (title_apl)<o:p></o:p><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><o:p> </o:p>If situation = 0 Then<o:p></o:p><br />End<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;">Else<o:p></o:p><br />Unload Screens<o:p></o:p><br />End If<o:p></o:p>End If<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><o:p></o:p>Call GetCursorPos(St_old)<o:p></o:p>End Sub<o:p></o:p>Private Sub close_application(titl As String)<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><o:p></o:p>On Error GoTo ers<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><o:p></o:p>Dim hand As Long<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;">hand = FindWindow(vbNullString, titl)<o:p></o:p></span></p>
<p> 
<p class="MsoNormal"><span lang="EN-US" style="color: black;">If hand > 0 Then<o:p></o:p><br /><span> </span>PostMessage hand, w_close, 0, 0<o:p></o:p><br />End If<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><o:p></o:p><span> </span><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;">Exit Sub<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;">ers:<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;">Exit Sub<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;">Resume Next<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;">End Sub<o:p></o:p></span></p>
<p> 
<p class="MsoNormal"><span lang="EN-US" style="color: black;">Private Sub Check1_Click()<o:p></o:p><br />If Check1.Value = 1 Then<o:p></o:p><br />basic_file_caption.Enabled = True<o:p></o:p><br />Else<o:p></o:p><br />basic_file_caption.Enabled = False<o:p></o:p><br />End If<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><o:p> </o:p>End Sub<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;">Private Sub Command1_Click()<o:p></o:p><br /><span></span>tm = registry<o:p></o:p><br />If tm = -1 Then Exit Sub<o:p></o:p><br />End<o:p></o:p><br />End Sub<o:p></o:p></span></p>
<p> 
<p class="MsoNormal"><span lang="EN-US" style="color: black;">Private Function registry() As Integer<o:p></o:p><br />If ff.FileExists(text_file.Text) = False Then<o:p></o:p><br /><o:p></o:p>registry = -1<o:p></o:p><br />Exit Function<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;">End If<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><o:p></o:p>SaveSetting &#8220;digit_scr_saver&#8221;, &#8220;data&#8221;, &#8220;path_file&#8221;, text_file.Text<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;">SaveSetting &#8220;digit_scr_saver&#8221;, &#8220;data&#8221;, &#8220;param_file&#8221;, basic_file_caption.Text<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;">registry = 0<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;">End Function<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;">Private Sub Command2_Click()<o:p></o:p><br />files.ShowOpen<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><o:p></o:p>ee = files.FileName<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;">If ee &lt;> &#8220;&#8221; And ff.FileExists(ee) = True Then<o:p></o:p><br />text_file.Text = ee<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><o:p></o:p>ee2 = ff.GetBaseName(text_file.Text)<o:p></o:p><br />basic_file_caption.Text = ee2<o:p></o:p><br />End If<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><o:p> </o:p><br />End Sub<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;">Private Sub Command3_Click()<o:p></o:p><br />End<o:p></o:p><br />End Sub<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;">Private Sub Command4_Click()<o:p></o:p><br />If ff.FileExists(text_file.Text) = False Then<o:p></o:p><br />Exit Sub<o:p></o:p><br />End If<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;">ee2 = ff.GetBaseName(text_file.Text)<o:p></o:p><br />basic_file_caption.Text = ee2<o:p></o:p><br />End Sub<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;">Private Sub Command5_Click()<o:p></o:p><br />tm = registry()<o:p></o:p><br />If tm = -1 Then Exit Sub<o:p></o:p><br />Load Screens<o:p></o:p><br />End Sub<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;">Private Sub Form_Load()<o:p></o:p><br />ar$ = GetSetting(&#8220;digit_scr_saver&#8221;, &#8220;data&#8221;, &#8220;path_file&#8221;)<o:p></o:p><br />title_apl = GetSetting(&#8220;digit_scr_saver&#8221;, &#8220;data&#8221;, &#8220;param_file&#8221;)<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><o:p> </o:p>text_file.Text = ar$<o:p></o:p><br />basic_file_caption.Text = title_apl<o:p></o:p><br />End Sub<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;">Private Sub Label3_Click()<o:p></o:p><br />On Error GoTo 10<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><o:p></o:p>ShellExecute Me.hwnd, vbNullString, &#8220;www.digitalnews.gr&#8221;, bNullString, &#8220;&#8221;, SW_SHOWNORMAL<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;">Exit Sub<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;">10:<o:p></o:p><br /><span></span><span></span>Exit Sub<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;">Resume Next<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><span> </span><o:p></o:p>End Sub<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;">Private Sub Label4_Click()<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;">tm$ = &#8220;http://www.digitalnews.gr/modules/tutproxorim/category.php?categoryid=1&#8243;<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;">ShellExecute Me.hwnd, vbNullString, tm$, bNullString, &#8220;&#8221;, SW_SHOWNORMAL<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;">End Sub<o:p></o:p></span></p>
<p><span lang="EN-US" style="color: black;">Public Declare Function ShellExecute Lib &#8220;shell32.dll&#8221; Alias &#8220;ShellExecuteA&#8221; _<o:p></o:p></span><span lang="EN-US" style="color: black;"><span><br />    </span>(ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, _<o:p></o:p></span><span lang="EN-US" style="color: black;"><span><br />    </span>ByVal lpParameters As String, ByVal lpDirectory As String, _<o:p></o:p></span><span lang="EN-US" style="color: black;"><span><br />    </span>ByVal nShowCmd As Long) As Long<o:p></o:p></span>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><o:p> </o:p><br />Public Const SW_SHOWNORMAL = 1<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><o:p></o:p>Public situation As Byte &#8217;0=kanonikh &#8217;1=preview<o:p></o:p>Public ff As New FileSystemObject<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><o:p></o:p>Public Sub <st1:place w:st="on">Main</st1:place>()<o:p></o:p><br />ss = UCase(Trim(Command))<o:p></o:p><br />SS2 = Left(ss, 2)<o:p></o:p></span></p>
<p><span lang="EN-US" style="color: black;">If SS2 = &#8220;/C&#8221; Or SS2 = &#8220;&#8221; Then<o:p></o:p></span><span lang="EN-US" style="color: black;"><br />situation = 1<o:p></o:p></span><span lang="EN-US" style="color: black;"><br />main_form.Show<o:p></o:p></span><span lang="EN-US" style="color: black;"><br />Else<o:p></o:p></span>
<p class="MsoNormal"><span lang="EN-US" style="color: black;">situation = 0<o:p></o:p><br />Load Screens<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;">End If<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="color: black;"><o:p></o:p>End Sub<o:p></o:p></span></p>
</p></div>
<p></span></p>
<img src="http://www.digitalnews.gr/?ak_action=api_record_view&id=4025&type=feed" alt="" />]]></content:encoded>
			<wfw:commentRss>http://www.digitalnews.gr/4025/%cf%80%cf%81%ce%bf%ce%b3%cf%81%ce%ac%ce%bc%ce%bc%ce%b1%cf%84%ce%b1-%cf%80%ce%bf%cf%85-%ce%b3%ce%af%ce%bd%ce%bf%ce%bd%cf%84%ce%b1%ce%b9-screen-saver-%ce%b5%ce%b4%cf%8e-%ce%bf-%cf%80%ce%b7%ce%b3%ce%b1/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk: basic
Page Caching using disk: basic
Object Caching 503/612 objects using disk: basic

Served from: www.digitalnews.gr @ 2012-02-08 11:59:10 -->
