Created
July 14, 2016 13:56
-
-
Save killobatt/188bc87234cbd89186809062e75b3b00 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
using System; | |
using System.Collections.Generic; | |
using System.ComponentModel; | |
using System.Data; | |
using System.Drawing; | |
using System.Linq; | |
using System.Text; | |
using System.Windows.Forms; | |
using System.IO; | |
using System.Runtime.InteropServices; | |
namespace Wallpapers | |
{ | |
public partial class Form1 : Form | |
{ | |
[DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = true)] // подключение .dll библиотек для работы с рабочим столом | |
private static extern int SystemParametersInfo(UInt32 uAction, UInt32 uParam, String lpvParam, UInt32 fuWinIni); | |
public const int SPI_SETDESKWALLPAPER = 20; | |
public const int SPIF_UPDATEINIFILE = 1; | |
public const int SPIF_SENDCHANGE = 2; | |
private string fullPath; | |
public Form1() | |
{ | |
InitializeComponent(); | |
DriveTreeInit(); //инициализация дерева папок с помощью метода DriveTreeInit | |
} | |
private void toolStripButton2_Click(object sender, EventArgs e) | |
{ | |
} | |
public void DriveTreeInit() //Метод инициализации дерева папок | |
{ | |
string[] drivesArray = Directory.GetLogicalDrives(); | |
treeView1.BeginUpdate(); | |
treeView1.Nodes.Clear(); | |
foreach(string s in drivesArray) | |
{ | |
TreeNode drive = new TreeNode(s, 0, 0); | |
treeView1.Nodes.Add(drive); | |
GetDirs(drive); | |
} | |
treeView1.EndUpdate(); | |
} | |
public void GetDirs(TreeNode node) //метод добавляет в список содержимое крневого каталога | |
{ | |
DirectoryInfo[] diArray; | |
node.Nodes.Clear(); | |
string fullPath = node.FullPath; | |
DirectoryInfo di = new DirectoryInfo(fullPath); | |
try { diArray = di.GetDirectories(); } | |
catch { return; } | |
foreach (DirectoryInfo dirinfo in diArray) | |
{ | |
TreeNode dir = new TreeNode(dirinfo.Name, 1, 2); | |
node.Nodes.Add(dir); | |
} | |
} | |
private void treeView1_AfterSelect(object sender, TreeViewEventArgs e) | |
{ | |
string[] drivesArray = Directory.GetLogicalDrives(); // используем статический метод Directory.GetLogicalDrives | |
// для получения списков логических элементов | |
foreach (string s in drivesArray) | |
Console.Write("{0} ", s); | |
DirectoryInfo[] diArray; | |
string fullPath = "C:\\"; | |
DirectoryInfo di = new DirectoryInfo(fullPath); // с помощью метода DirectoryInfo получаем список | |
//всех подкаталогов | |
try{ diArray = di.GetDirectories(); } | |
catch{ return; } | |
} | |
private void treeView1_OnBeforeExpand(object sender, System.Windows.Forms.TreeViewCancelEventArgs e) | |
{ | |
treeView1.BeginUpdate(); | |
foreach (TreeNode node in e.Node.Nodes) | |
{ | |
GetDirs(node); | |
} | |
treeView1.EndUpdate(); | |
} | |
private void listView1_SelectedIndexChanged(object sender, System.Windows.Forms.TreeViewEventArgs e) | |
{ | |
listView1.Items.Clear(); | |
ListViewItem lvi = new ListViewItem("myfile.txt"); | |
lvi.SubItems.Add("1024"); | |
lvi.SubItems.Add("10-05-2003"); | |
listView1.Items.Add(lvi); | |
} | |
private void treeView1_OnAfterSelect(object sender,System.Windows.Forms.TreeViewEventArgs e) | |
{ | |
TreeNode selectedNode = e.Node; | |
fullPath = selectedNode.FullPath; | |
DirectoryInfo di = new DirectoryInfo(fullPath); | |
FileInfo[] fiArray; | |
DirectoryInfo[] diArray; | |
try { fiArray = di.GetFiles(); diArray = di.GetDirectories(); } | |
catch { return; } | |
listView1.Items.Clear(); | |
foreach (DirectoryInfo dirInfo in diArray) | |
{ | |
ListViewItem lvi = new ListViewItem(dirInfo.Name); | |
lvi.SubItems.Add("0"); | |
lvi.SubItems.Add(dirInfo.LastWriteTime.ToString()); | |
lvi.ImageIndex = 0; | |
listView1.Items.Add(lvi); | |
} | |
foreach (FileInfo fileInfo in fiArray) | |
{ | |
ListViewItem lvi = new ListViewItem(fileInfo.Name); | |
lvi.SubItems.Add(fileInfo.Length.ToString()); | |
lvi.SubItems.Add(fileInfo.LastWriteTime.ToString()); | |
string filenameExtension = Path.GetExtension(fileInfo.Name).ToLower(); | |
listView1.Items.Add(lvi); | |
} | |
} | |
private void listView1_SelectedIndexChanged(object sender, EventArgs e) | |
{ | |
} | |
private void listView1_OnItemActivate(object sender, System.EventArgs e) | |
{ | |
foreach(ListViewItem lvi in listView1.SelectedItems) | |
{ | |
this.loadImage(lvi, pictureBox1); | |
} | |
} | |
private void button1_Click(object sender, EventArgs e) | |
{ | |
if (listView1.SelectedIndices.Count > 0 ) | |
{ | |
int oldSelection = listView1.SelectedIndices[0]; | |
listView1.SelectedIndices.Clear(); | |
if (1 <= oldSelection) | |
if (oldSelection - 1 <= listView1.Items.Count) | |
{ | |
listView1.SelectedIndices.Add(oldSelection - 1); | |
} | |
else { listView1.SelectedIndices.Add(1); } | |
} | |
foreach (ListViewItem lvi in listView1.SelectedItems) | |
{ | |
this.loadImage(lvi, pictureBox1); | |
} | |
} | |
private void button2_Click(object sender, EventArgs e) | |
{ | |
if (listView1.SelectedIndices.Count > 0) | |
{ | |
int oldSelection = listView1.SelectedIndices[0]; | |
listView1.SelectedIndices.Clear(); | |
if (oldSelection + 1 >= listView1.Items.Count) listView1.SelectedIndices.Add(0); | |
else listView1.SelectedIndices.Add(oldSelection + 1); | |
} | |
foreach (ListViewItem lvi in listView1.SelectedItems) | |
{ | |
this.loadImage(lvi, pictureBox1); | |
} | |
} | |
private void toolStripButton6_Click(object sender, EventArgs e) | |
{ | |
string path = pictureBox1.ImageLocation; | |
System.Drawing.Image image = System.Drawing.Image.FromFile(path); ; | |
image.Save(@"C:\WINDOWS\Web\Wallpaper\test.bmp", System.Drawing.Imaging.ImageFormat.Bmp); | |
SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, @"C:\WINDOWS\Web\Wallpaper\test.bmp", SPIF_UPDATEINIFILE | SPIF_SENDCHANGE); | |
} | |
private void оПрограммеToolStripMenuItem1_Click(object sender, EventArgs e) | |
{ | |
MessageBox.Show("Программа для оформления рабочего стола\n\n\n Лось Татьяна, 2014г.", "Wall Changer 1.0"); | |
} | |
private void снимокЭкранаToolStripMenuItem1_Click(object sender, EventArgs e) | |
{ | |
var boom = Screen.GetBounds(new Point(0, 0)); | |
var bmp = new Bitmap(boom.Width, boom.Height); | |
using (var g = Graphics.FromImage(bmp)) | |
g.CopyFromScreen(0, 0, 0, 0, bmp.Size); | |
bmp.Save(@"C:\Documents and Settings\User\Мои документы\Мои рисунки\screen.bmp"); | |
} | |
private void Form1_KeyDown(object sender, KeyEventArgs e) | |
{ | |
if (e.KeyCode == Keys.S) снимокЭкранаToolStripMenuItem1_Click(sender, e); | |
} | |
private void toolStripButton10_Click(object sender, EventArgs e) | |
{ | |
Timer timer = new Timer(); | |
timer.Interval = 1200000; | |
timer.Tick += button3_Click; | |
timer.Start(); | |
} | |
private void pictureBox1_Click(object sender, EventArgs e) | |
{ | |
} | |
private void folderBrowserDialog1_HelpRequest(object sender, EventArgs e) | |
{ | |
} | |
private void button3_Click(object sender, EventArgs e) | |
{ | |
if (listView1.SelectedIndices.Count > 0) | |
{ | |
int oldSelection = listView1.SelectedIndices[0]; | |
listView1.SelectedIndices.Clear(); | |
if (oldSelection + 1 >= listView1.Items.Count) listView1.SelectedIndices.Add(0); | |
else listView1.SelectedIndices.Add(oldSelection + 1); | |
} | |
foreach (ListViewItem lvi in listView1.SelectedItems) | |
{ | |
this.loadImage(lvi, pictureBox2); | |
} | |
string path = pictureBox2.ImageLocation; | |
System.Drawing.Image image = System.Drawing.Image.FromFile(path); ; | |
image.Save(@"C:\WINDOWS\Web\Wallpaper\test.bmp", System.Drawing.Imaging.ImageFormat.Bmp); | |
SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, @"C:\WINDOWS\Web\Wallpaper\test.bmp", SPIF_UPDATEINIFILE | SPIF_SENDCHANGE); | |
} | |
private void loadImage(ListViewItem lvi, PictureBox pictureBox) { | |
string ext = Path.GetExtension(lvi.Text).ToLower(); | |
if (ext == ".jpg" || ext == ".jpeg" || ext == ".bmp" || ext == ".png") | |
{ | |
try { pictureBox.Load(Path.Combine(fullPath, lvi.Text)); } | |
catch { return; } | |
} | |
} | |
private void pictureBox2_Click(object sender, EventArgs e) | |
{ | |
} | |
private void Form1_Resize(object sender, EventArgs e) | |
{ | |
if (WindowState == FormWindowState.Minimized) | |
Hide(); | |
notifyIcon1.BalloonTipTitle = "Программа была спрятана"; | |
notifyIcon1.BalloonTipText = "Обратите внимание что программа была спрятана в трей и продолжит свою работу."; | |
notifyIcon1.ShowBalloonTip(5000); // Параметром указываем количество миллисекунд, которое будет показываться подсказка | |
} | |
private void notifyIcon1_MouseDoubleClick(object sender, MouseEventArgs e) | |
{ | |
Show(); | |
WindowState = FormWindowState.Normal; | |
} | |
private void menuStrip1_ItemClicked(object sender, ToolStripItemClickedEventArgs e) | |
{ | |
} | |
private void listView1_SelectedIndexChanged_1(object sender, EventArgs e) | |
{ | |
} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment