Страница: 1 | 2 | 3 |
Вопрос: Как сохранить изменение размеров формы? (-)
Добавлено: 21.06.06 16:01
Автор вопроса: Sergey
Ответы
Всего ответов: 43
Номер ответа: 31
Автор ответа:
Алексей
ICQ: 207504159
Вопросов: 1
Ответов: 14
Web-сайт:
Профиль | | #31
Добавлено: 23.06.06 22:10
Я, блин, этот пример для показательности накатал, за минуту. Хотел с людьми поделиться. А вы так сразу критикуете: вот кому куда надо, тот туда этот код и вставит! Разные задачи диктуют разные подходы.
Номер ответа: 32
Автор ответа:
EROS
Вопросов: 58
Ответов: 4255
Профиль | | #32
Добавлено: 23.06.06 22:11
это еще мелочи... ))
самое интересное в том, что он Form_Resize использует для отслеживания в изменениях Me.Left и Me.Top
Номер ответа: 33
Автор ответа:
EROS
Вопросов: 58
Ответов: 4255
Профиль | | #33
Добавлено: 23.06.06 22:14
Алексей,
старик.. ты не обижайся.. мы не критикуем, а обсуждаем плюсы и минусы твоего варианта решения..
Номер ответа: 34
Автор ответа:
Sacred Phoenix
ICQ: 304238252
Вопросов: 52
Ответов: 927
Профиль | | #34
Добавлено: 23.06.06 22:42
Только щас заметил...
2 Алексей, и правда, не надо, EROS правильно говорит
Номер ответа: 35
Автор ответа:
Nikolai
Вопросов: 23
Ответов: 58
Профиль | | #35
Добавлено: 25.06.06 22:16
давайте продолжем тему. КАК СЧИТАТЬ 2 ДОЛБАНЫХ ЧИСЛА?
Из текстового файла ,а то я уже 4 вечер сижу с этой
проблемой пообещал Sergeyю доделать прогу и так
сесть в лужу сам не ожидал .Эрос молодец решил проблему
но мне-то самому интересно . Короче давайте мой код
всё-таки доделаем.
Номер ответа: 36
Автор ответа:
EROS
Вопросов: 58
Ответов: 4255
Профиль | | #36
Добавлено: 25.06.06 23:03
ага... т.е. ты предлагаешь мне доделать твой код????
Номер ответа: 37
Автор ответа:
EROS
Вопросов: 58
Ответов: 4255
Профиль | | #37
Добавлено: 25.06.06 23:11
и вообще... кто тебя так учил файлы файлы писать?
Print(1, a, b)
FileClose(1)
и в .NET такие вещи писать в текстовый файл.. это попахивает самоиздевательством(мазохизмом).. Есть более удобные и просты способы.. Xml,Binary,Реестр... на крайний случай INI!!! ... но уж никак не текстовый файл..
Номер ответа: 38
Автор ответа:
EROS
Вопросов: 58
Ответов: 4255
Профиль | | #38
Добавлено: 26.06.06 03:54
На тебе в текстовом варианте..
З.Ы. твой код я доделывать не буду.. т.к. ЭТО кодом назвать сложно..
Imports System.IO
Public Class Form1
'// Path to settings file
Private filePath As String = Path.Combine(Application.StartupPath, "settings.txt"
Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
'// Save Location & Size
Try
Dim settings() As String = New String() {Me.Left, Me.Top, Me.Width, Me.Height}
File.WriteAllLines(filePath, settings)
Catch ex As Exception
MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'// Load Location & Size
Try
If File.Exists(filePath) Then
Dim settings() As String = File.ReadAllLines(filePath)
If settings.Length = 4 Then
Int32.TryParse(settings(0), Me.Left)
Int32.TryParse(settings(1), Me.Top)
Int32.TryParse(settings(2), Me.Width)
Int32.TryParse(settings(3), Me.Height)
End If
End If
Catch ex As Exception
MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
End Sub
End Class
Номер ответа: 39
Автор ответа:
Sergey
Вопросов: 15
Ответов: 55
Профиль | | #39
Добавлено: 26.06.06 09:52
EROS, здОрово!
Вот если бы Вы или K&M предложили доработанный вариант для записи в реестр, было бы хорошо поместить оба варианта в раздел "Библиотека кодов".
Номер ответа: 40
Автор ответа:
EROS
Вопросов: 58
Ответов: 4255
Профиль | | #40
Добавлено: 26.06.06 10:50
Sergey
во-первых.. библиотека кодов уже лет 300 не пополняется, а во вторых K&M предложил вполне рабочий вариант, а довести его до ума это уж постарайся сам, иначе толку от примера никакого не будет..
Номер ответа: 41
Автор ответа:
Sergey
Вопросов: 15
Ответов: 55
Профиль | | #41
Добавлено: 26.06.06 21:16
EROS, мне, собственно, уже понятно
А жаль...
Полезные были бы примеры.
Номер ответа: 42
Автор ответа:
mrNikolas
ICQ: 125478035
Вопросов: 4
Ответов: 9
Профиль | | #42
Добавлено: 06.07.06 00:30
Я приверженец родных способов и инструментов сохранения состояний,к примеру, размер формы при открытии формы считываю из My.Settings
прежде объявив
MainFormSize как System.Drawing.Size
При этом это объявление может быть как глобальным (при запуске приложения под любым пользователем) так и на каждого пользователя свои индивидуальные установки
Me.Size = My.Settings.MainFormSize
Номер ответа: 43
Автор ответа:
Artyom
Разработчик
Вопросов: 130
Ответов: 6602
Профиль | | #43
Добавлено: 06.07.06 12:42
Небольшая поправка - для работы с My.Settings класс который ты в него собираешься поместить, должен быть сериализируемым.
Но что-то вы сильно просто решили все сделать, не учитываете, что форма может находиться в разных состояниях, например, развернута во весь экран, свернута, и размеры тоже нужно сохранять соответственно.
У меня в свое время на VB6 было написано несколько десяток строк кода, пока удалось довести ресайзинг до уровня Notepad...