Показать полную графическую версию : Visual Basic 2008
Страниц :
1
2
3
4
5
6
7
8
9
10
11
[
12]
13
14
15
16
17
18
alexa___
05-08-2008, 14:50
Uzvern,
В том то и дело, что все рисунки (изображения) могут не вместится в область формы, надо чтобы они позиционировались на этом "поле".
Неужели нет решения? Я уверен что дожно быть. Программисты, отзовитесь!!!
Delirium
05-08-2008, 16:53
alexa___, ты можешь в конце концов указать язык, на котором пишешь? в .NET Framework 2.0 есть контейнер ToolStripContainer, как уже сказал Uzvern:
ToolStripContainer Class
Provides panels on each side of the form and a central panel that can hold one or more controls.
Visual Basic (Declaration)
<ComVisibleAttribute(True)> _
<ClassInterfaceAttribute(ClassInterfaceType.AutoDispatch)> _
Public Class ToolStripContainer _
Inherits ContainerControl
Visual Basic (Usage)
Dim instance As ToolStripContainer
В этом контейнере уже можешь делать что душе угодно.
ссылка с MSDN:
ms-help://MS.MSDNQTR.v90.en/fxref_system.windows.forms/html/1a9341d0-58da-0c16-762d-a9ec150ae790.htm
alexa___
05-08-2008, 17:01
Delirium, ты мне коды пишешь, а мне нужен компонет, который можно выбрать на панели инструментов и положить его на форму. (.NET Framework 3.5) - может 2.0 выбрать?
alexa___, если бы такое компонет существовал, то тебе бы тогда уже давно написали как его вызвать и кинуть на форму. Мое мнение таково : этот компонент не нужен, т.к. есть V(H)ScrollBar с сочетанием других компонентов.
Вот код : Private Sub VSB_Scroll(ByVal e As System.Windows.Forms.ScrollEventArgs, ByVal ParamArray Components() As Object)
For Each EC As Object In Components
If e.OldValue > e.NewValue Then
EC.Location = New Point(EC.Location.X, EC.Location.Y + e.NewValue + e.OldValue)
Else
EC.Location = New Point(EC.Location.X, EC.Location.Y - e.NewValue - e.OldValue)
End If
Next
End Sub
Как его юзать : Private Sub VScrollBar1_Scroll(ByVal sender As System.Object, ByVal e As System.Windows.Forms.ScrollEventArgs) Handles VScrollBar1.Scroll
VSB_Scroll(e, указываем нужные компоненты через запятую)
End Sub
Как можно задать иконки файлам, кторые открываются через написаную прогу? Типа как AIMP задает иконки на звуковые файлы.
Delirium
06-08-2008, 01:37
Открываем реестр....
Смотрим пример текстового файла....
[HKEY_CLASSES_ROOT\txtfile\DefaultIcon]
@=%SystemRoot%\system32\shell32.dll,-152
Соответственно, если у вас есть файлы ваши с расширением abc, то надо в реестре сделать запись примерно похожую на txtfile.
Ещё небольшой вопрос не по теме : как можно создавать (!) (в одной файле, несколько иконок разного качества)?
Рисовать то мы их умеем, осталось только их как-то в один ico-файл упаковать.
Как обозначит переменную, как Controls?
Dim FEControls As
Просто хочу сделать, чтобы можно было обозначить нужный Controls
И как можно открыть папку и выделить какой-либо элемент?
Доброго времени суток.
Уже пятый день бьюсь над вопросом и ничего не получается :dont-know. Подскажите плиз
Вопрос в следующем:
Есть на винчестере картинка, кликнув на кнопке необходимо её загрузить, уменьшить до размеров 150х110 пикс. и сохранить в другом месте с этими размерами.
Как вариант её еще нужно отобразить в PictureBox, но с этим проблем у меня не возникнет, я надеюсь..
Мессир, чтобы сохранить файл можно воспользоваться этим кодом, а вот как изменить размеры сохраняемого файла, это мне тоже интерестно :yes:
Dim SFD As New SaveFileDialog
Dim PB As PictureBox
Sub SaveImage(ByVal PictureBox As PictureBox)
PB = PictureBox
AddHandler SFD.FileOk, AddressOf SFD_FO
SFD.ShowDialog()
End Sub
Sub SFD_FO()
PB.Image.Save(SFD.FileName)
End Sub
чтобы загрузить изображение в PictureBox
Sub PictureLoad(ByVal PictureBox As PictureBox, ByVal Path As String)
PictureBox.Load(Path)
PictureBox.Size = New Size(150, 110)
PictureBox.SizeMode = PictureBoxSizeMode.StretchImage
End Sub
Ещё небольшой вопрос не по теме : как можно создавать (!) (в одной файле, несколько иконок разного качества)?
Рисовать то мы их умеем, осталось только их как-то в один ico-файл упаковать. »
Я для этого юзаю прогу IconUtils. там можно чё угодно с иконами делать.
Мессир, чтобы сохранить файл можно воспользоваться этим кодом, »
Спасибо. попробую. :up
а вот как изменить размеры сохраняемого файла, это мне тоже интерестно »
Надеюсь если узнаеш напишеш ;-)
Я для этого юзаю прогу IconUtils. там можно чё угодно с иконами делать. »
Да я уже через Visual Studio понял как сделать.
Надеюсь если узнаеш напишеш ;-) »
Думаю, что тебе адмирал быстрее ответит :) :yes:
Изменяем размеры изображения
Dim OFD As New OpenFileDialog
Dim SFD As New SaveFileDialog
Private Sub Form_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Me.Load
OFD.Filter = "All Files|*.*"
SFD.Filter = "JPG|*.jpg|GIF|*.gif|PNG|*.png"
AddHandler OFD.FileOk, AddressOf OFD_FO
AddHandler SFD.FileOk, AddressOf SFD_FO
OFD.ShowDialog()
End
End Sub
Private Sub OFD_FO()
If IO.File.Exists(OFD.FileName) Then
If OFD.FileName.EndsWith(".jpg") Or OFD.FileName.EndsWith(".gif") Or OFD.FileName.EndsWith(".png") Then
SFD.ShowDialog()
Else
MsgBox("Вы указали неверный файл.", MsgBoxStyle.Critical, "Ошибка")
End If
End If
End Sub
Private Sub SFD_FO()
Dim Size As Size = New Size(150, 110)
Dim b As New Bitmap(Bitmap.FromFile(OFD.FileName), Size)
For Each SFDFE In SFD.Filter
Select Case SFDFE
Case "JPG"
b.Save(SFD.FileName, Imaging.ImageFormat.Jpeg)
End
Case "GIF"
b.Save(SFD.FileName, Imaging.ImageFormat.Gif)
End
Case "PNG"
b.Save(SFD.FileName, Imaging.ImageFormat.Png)
End
End Select
Next
End Sub
Before : http://i36.tinypic.com/28t3ye.jpg
After : http://i37.tinypic.com/2efrqf9.png
стырил отсюда (http://www.gotdotnet.ru/Forums/Windows/488591.aspx)
как в (Save/Open)FileDialog можно указать несколько расширений?
All Files|*.* это все файлы, а мне нужно указать например My Prog Files|*.aaa,*.aab,.*abc что-то типо этого
Admiral, Я нашел как добавить свое поле в выпадающее меню. (http://rsdn.ru/article/vb/wndproc.xml?print)
152 (http://forum.oszone.net/post-842188-152.html)
Где можно просмотреть или как-то вывести "windows.h" header file?
Protected Overrides Sub WndProc(ByRef m As System.Windows.Forms.Message)
Const ID_Load As Integer = &H1
If m.Msg = ID_Load Then
MsgBox("Форма удачно загружена")
End If
MyBase.WndProc(m)
End Sub
Например тут &H1 отвечает за загрузку формы, &H2 за её закрытие. Дак вот мне бы хотелос узнать, где я могу получить список действий.
Delirium
20-08-2008, 01:25
Вам нужно именно содержимое windows.h ? В Visual Studio это просто - щелчком на этом файле - View Source. Ну или просто поиском найти его на винте :)
Delirium, чет я тебя не совсем понял! :unsure:
вообщем не нужен спиок данный дейтсвий (&H1, &H2 и т.д.) + description
Delirium
20-08-2008, 01:35
Вопрос звучал как:
Где можно просмотреть или как-то вывести "windows.h" header file? »
отсюда и ответ был.
С вашего кода абсолютно не понятно, что это за &H1 , у вас просто константе присваивается значение некоего &H - откуда это взято?
&H1 отвечает за загрузку формы »
&H2 за её закрытие »
откуда это взято »
Ну как бы из интернета. (http://rsdn.ru/article/vb/wndproc.xml?print)
Прсто я подумал, что "windows.h" - это именно действия, похоже я ошибся и задал вопрос не совсем корректно...
Delirium
20-08-2008, 01:52
Ну так вы бы писали, что вам необходимы коды &H203 и им подобные :) Это похоже на #define в заголовочных файлах. Ищите windows.h как я писал, и будет счастье :) Ну, если есть время, подождите, поищу.
Подсказка: копать примерно отсюда (http://msdn.microsoft.com/en-us/library/ms646360(VS.85).aspx)
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.