
Пытаюсь программировать
#21
Опубликовано 21 December 2009 - 19:15
а то они появляются только после заполнения предыдущих
#22
Опубликовано 21 December 2009 - 20:53
Добавляешь этот код в Form1_load
P.S. Учитывая особенности этого форума хочу добавить, что дети из серии "даю, 100, ну ладно 150" восприниматься всерьез не будут.
ты такой глупенький, что это уже даже не смешно
#23
Опубликовано 21 December 2009 - 22:05
#24
Опубликовано 22 December 2009 - 00:48
Накидал на скорую руку код для кнопки сохранить
const string f = "dataDridView.csv"; int count_cells=dataGridView1.Rows[0].Cells.Count-1; string data=""; for (int i = 0; i < dataGridView1.Rows.Count-1; i++) { for (int j = 0; j < count_cells; j++) { data = data + dataGridView1.Rows[i].Cells[j].Value + ";"; } data = data + dataGridView1.Rows[i].Cells[count_cells].Value + "\n"; } File.WriteAllText(f,data);ща придут поправят =)))
P.S. Учитывая особенности этого форума хочу добавить, что дети из серии "даю, 100, ну ладно 150" восприниматься всерьез не будут.
ты такой глупенький, что это уже даже не смешно
#25
Опубликовано 22 December 2009 - 01:11
мне нужно создать файл что бы в него сохранялось?
#26
Опубликовано 22 December 2009 - 01:13
P.S. Учитывая особенности этого форума хочу добавить, что дети из серии "даю, 100, ну ладно 150" восприниматься всерьез не будут.
ты такой глупенький, что это уже даже не смешно
#27
Опубликовано 22 December 2009 - 01:42
поправка
данные сохраняются в файл dataDridView.csv
я могу работая в таблице пересчитать данные и уже пересчитанные и введенные сохранить в файл и при следующим запуске считать обратно?
#28
Опубликовано 22 December 2009 - 01:53
ты сам-то вопрос понял ?запустился но не сохраняет при следующем открытии
поправка
данные сохраняются в файл dataDridView.csv
я могу работая в таблице пересчитать данные и уже пересчитанные и введенные сохранить в файл и при следующим запуске считать обратно?

напиши конкретно по шагам, что ты хочешь сделать

Die like the rest

Пуля производит удивительные изменеия в голове, даже если она попала в задницу.
(С) Лукьяненко "Черновик"
Conseal nohing.
And watch the fools searching forever.
#29
Опубликовано 22 December 2009 - 01:58
ты сам-то вопрос понял ?
напиши конкретно по шагам, что ты хочешь сделать
попробую)
открываю прогу,
в первой строчке ввожу время прихода на работу и время ухода
автоматом должно высчитываться сколько получилось часов в день
сохраняю, закрываю прогу
открываю на следующий день там все что было введено остается итд
#30
Опубликовано 22 December 2009 - 03:27
1а. На событие потери фокуса у текстбокса времени ухода с работы повесить обработчик (в свойствах textBox, раздел Events, выбрать нужное событие и кликнуть два раза), вычитать из введенных данных (предварительно сконвертировать из строки в DateTime) данные введенные в первом текстбоксе, в который вводится время прихода на работу.
1б. В обработчике клика кнопки записываем данные в БД. Закрываем прогу.
2. При открытии считываем из БД последнюю по дате запись.
Вроде все

Тебе лучше самому код написать, так лучше и быстрее научишься.
www.asp.net здесь много полезной инфы, есть и для начинающих материалы.
http://sqlite.phxsoftware.com/ тут об SQLite. Отюсда нужно скачать саму библиотечку и обертку для .NET к ней, а и еще ADO.NET DataProvider.
а самое главное, поставь MSDN себе, если ты этого еще не сделал.

Обращайся, если что

Die like the rest

Пуля производит удивительные изменеия в голове, даже если она попала в задницу.
(С) Лукьяненко "Черновик"
Conseal nohing.
And watch the fools searching forever.
#31
Опубликовано 22 December 2009 - 15:24
2 maxtor надо просто добавить чтение из файла при открытии формы. Вчера не успел. дома буду может напишу.
P.S. Учитывая особенности этого форума хочу добавить, что дети из серии "даю, 100, ну ладно 150" восприниматься всерьез не будут.
ты такой глупенький, что это уже даже не смешно
#32
Опубликовано 22 December 2009 - 19:54
а то у меня от sql мозг кипит
мне бы что попроще )
#33
Опубликовано 23 December 2009 - 00:59
private void save_to_file() { //Задаем имя файла const string f = "dataDridView.csv"; //количество столбцов int count_cells = dataGridView1.Rows[0].Cells.Count - 1; //переменная для хранения данных, помещаемых в файл string data = ""; //Наполняем переменную data значениями из таблицы for (int i = 0; i < dataGridView1.Rows.Count - 1; i++) { for (int j = 0; j < count_cells; j++) { //Прибовляем значения, разделяя их ; data = data + dataGridView1.Rows[i].Cells[j].Value + ";"; } //После последнего значения строки добовляем перенос data = data + dataGridView1.Rows[i].Cells[count_cells].Value + "\n"; } //Сохраняем File.WriteAllText(f, data); }и
private void load_from_file() { //Указываем имя открываемого файла const string f = "dataDridView.csv"; //Разбиваем содержимое файла на строки string[] lines = File.ReadAllLines(f); //Проверяем не пуст ли файл if (lines.Count() == 0) //Если пуст MessageBox.Show("Файл пуст"); else { //Если нет, то устанавливаем количество строк в таблице dataGridView1.RowCount = lines.Count(); //Счетчики строк и столбцов int i = 0; int j = 0; //Строки разбиваем на отдельные значения foreach (string line in lines) { string[] data = line.Split(';'); foreach (string element in data) { dataGridView1.Rows[i].Cells[j].Value = element; j++; } j = 0; i++; } } }теперь в нужных местах программы используешь load_from_file() и save_to_file()
Например можно в событии Form1_Closed написать save_to_file(), а в событии Form1_Load написать load_from_file(). Тогда таблица сама будет сохраняться в файле при закрытии формы и открываться при открытии формы
P.S. Учитывая особенности этого форума хочу добавить, что дети из серии "даю, 100, ну ладно 150" восприниматься всерьез не будут.
ты такой глупенький, что это уже даже не смешно
#34
Опубликовано 23 December 2009 - 01:46
а пока не получилось сохранять по закрытию, если кнопку на событие сделать работает, а сама не хочет
#35
Опубликовано 23 December 2009 - 03:08
Die like the rest

Пуля производит удивительные изменеия в голове, даже если она попала в задницу.
(С) Лукьяненко "Черновик"
Conseal nohing.
And watch the fools searching forever.
#36
Опубликовано 23 December 2009 - 10:42
private void Form1_Close(object sender, System.EventArgs e)
{
save_to_file();
}
#37
Опубликовано 23 December 2009 - 12:05
{
save_to_file();
}[/codebox]
P.S. Учитывая особенности этого форума хочу добавить, что дети из серии "даю, 100, ну ладно 150" восприниматься всерьез не будут.
ты такой глупенький, что это уже даже не смешно
#38
Опубликовано 23 December 2009 - 13:53

так работает
private void button2_Click_1(object sender, EventArgs e)
{
save_to_file();
}
а так нет
private void Form1_FormClosed(object sender, FormClosedEventArgs e)
{
save_to_file();
}
в интернете несколько вариантов нашел, не получилось пока
#39
Опубликовано 23 December 2009 - 18:23

продебажить, надо в общем.
Die like the rest

Пуля производит удивительные изменеия в голове, даже если она попала в задницу.
(С) Лукьяненко "Черновик"
Conseal nohing.
And watch the fools searching forever.
#40
Опубликовано 24 December 2009 - 01:57
private void Form1_FormClosed(Object sender, FormClosedEventArgs e)
private void Form1_FormClosed(object sender, FormClosedEventHandler e)
private void Form1_FormClosed(object sender, FormClosingEventArgs e)
не работает

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; namespace WindowsFormsApplication1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } // загрузка данных private void Form1_Load(object sender, EventArgs e) { load_from_file(); dataGridView1.RowCount = 31; } // авто сохранение при закрытии программы, не пашет :( private void Form1_FormClosed(object sender, FormClosedEventArgs e) { save_to_file(); } // сохранение по кнопки private void button1_Click(object sender, EventArgs e) { save_to_file(); } private void dataGridView1_CellContentClick_1(object sender, DataGridViewCellEventArgs e) { } //заргузка файла private void load_from_file() { //Указываем имя открываемого файла const string f = "time"; //Разбиваем содержимое файла на строки string[] lines = File.ReadAllLines(f); //Проверяем не пуст ли файл if (lines.Count() == 0) //Если пуст MessageBox.Show("Первый запуск программы"); else { //Если нет, то устанавливаем количество строк в таблице dataGridView1.RowCount = lines.Count(); //Счетчики строк и столбцов int i = 0; int j = 0; //Строки разбиваем на отдельные значения foreach (string line in lines) { string[] data = line.Split(';'); foreach (string element in data) { dataGridView1.Rows[i].Cells[j].Value = element; j++; } j = 0; i++; } } } //сохранение файла private void save_to_file() { //Задаем имя файла const string f = "time"; //количество столбцов int count_cells = dataGridView1.Rows[0].Cells.Count - 1; //переменная для хранения данных, помещаемых в файл string data = ""; //Наполняем переменную data значениями из таблицы for (int i = 0; i < dataGridView1.Rows.Count - 1; i++) { for (int j = 0; j < count_cells; j++) { //Прибовляем значения, разделяя их; data = data + dataGridView1.Rows[i].Cells[j].Value + ";"; } //После последнего значения строки добовляем перенос data = data + dataGridView1.Rows[i].Cells[count_cells].Value + "\n"; } //Сохраняем File.WriteAllText(f, data); } private void button3_Click(object sender, EventArgs e) { } private void dateTimePicker1_ValueChanged(object sender, EventArgs e) { } private void textBox1_TextChanged(object sender, EventArgs e) { } } }
Посетителей, читающих эту тему: 1
0 пользователей, 1 гостей, 0 анонимных пользователей