Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Офф-топ

Страница: 1 |

 

  Вопрос: Пообщаемся? Добавлено: 25.04.07 20:53  

Автор вопроса:  Боцман | Web-сайт: Rus-Skipper.narod.ru | ICQ: 295725312 
Тут недельку назад я дал не дописанные исходники этой проги. http://www.vbnet.ru/forum/show.aspx?id=137902&page=3
И вот решил дописать, что получилось, смотрите здесь
http://rus-skipper.narod.ru/raznoe/ALT_X.zip
На бета тестирование народ мало ходит вот и выложил здесь, может, кто чего подскажет доделать,
а то сам я уже, как бы и так доволен пока, но какие то смутные сомнения есть, а в чем сам не пойму.
Да и разговоров сегодня на форуме мало, почему бы прогу не посмотреть, а?
Может, как говорится, будем жениться, все пригодится

О программе : Панель быстрого запуска.
1. Работает из папки.
2.Минимум настроек, но широкие возможности (Вот загнул).
3.Поддержка до 10 скинов.
4.Память жрет меньше, чем та, что стоит еще пока у меня.
5.Нет ни одного таймера, полная демократия, где оставил и (на какой группе), там и запустится.
6, Размер ZIP 76КБ
7. Оставит из мусора только папку в реестре с десятком ключей о настройки самой проги.
Адрес: HKEY_CURRENT_USER\Software\VB and VBA Program Settings\ALT_X _Rus-Skipper + имя пользователя.
Все остальное в папке с программой.
Думаю вот добавить ли кнопку, удалить все следы пребывания на компе, или так оставить?
Да ALT-X это чтобы вытащить на перед, если запущено много других программ, а прога не поверх всех назначена.
.Первый запуск, чуть длиннее из-за создания каталогов в папке проги.
Я просто граблю иконки из shell32.DLL, зато теперь окно, выбор иконки, более просторное, да и свои кому охота может добавлять, в папку Ikon.
К стати если кому интересно вот код вызова стандартного окна.
Private Declare Function PickIconDlg Lib "shell32" ( _
              ByVal hwnd As Long, _
              ByRef pszIconPath As String, _
              ByVal cchIconPath As Long, _
              ByRef piIconIndex As Long _
          ) As Long
Private Sub Command1_Click()
 Dim iconIndex As Long
 iconIndex = 13’Это какую при пуске выделить, по номеру если надо
 Call PickIconDlg(Me.hwnd, vbNullString, 0, iconIndex)
 Print iconIndex’ а это имя значка путь ведь и так известен
End Sub

Ответить

  Ответы Всего ответов: 7  

Номер ответа: 1
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #1 Добавлено: 26.04.07 02:07
1) имхо стандартные батаны мастдай, сделай вместо них имеджи - получится что можно будет делать кнопки произвольной формы и прозрачные в некоторых местах. Идею обмозговать конечно нужно, но это уже тебе :)

2) эээ.. ну копку добавил, хотя только после того как прочитал справку :) Но как теперь её удалить? :) (та кнопку а не справку! :)) )
имхо в менюшке нужны пункты "Добавить кнопку" и "Удалить кнопку"

3) Какая ж это панель быстрого запуска? Это ОКНО быстрого запуска :)) Где прилипания к краям, где вид "безбардюрный" ?

4) Чё оно при изминении размера окна мерцает всё? Имхо сабклассингом нужно делать, а не тупо в From_Resize условий натыкать :)

Ну ладно, пока хватит, а то я могу ещё спросить про поддержку плагинов, мож гаджетов гы :))

Ответить

Номер ответа: 2
Автор ответа:
 AgentFire



ICQ: 192496851 

Вопросов: 75
Ответов: 3178
 Профиль | | #2 Добавлено: 26.04.07 11:31
как только ObjectDock перебьешь до дизайну, сразу буду юзать твoю прогу.

Ответить

Номер ответа: 3
Автор ответа:
 avdey



ICQ: 219571279 

Вопросов: 34
Ответов: 486
 Профиль | | #3 Добавлено: 26.04.07 13:23
Если интересно, то вот наброски панельки на NET, на форму кинуть пикчербокс с именем PB и таймер с именем Tim:
Public Class Form1
    Dim a
    Dim scrRect, actRect As Rectangle
    Dim defColor As Color
    Dim InRect As Boolean = False
    
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        scrRect = My.Computer.Screen.WorkingArea
        scrRect.X = scrRect.Width - 80
        With actRect
            .X = scrRect.Width - 1
            .Y = scrRect.Height / 2 - 80
            .Width = 1
            .Height = 160
        End With
        Me.Size = scrRect.Size
        Me.Location = scrRect.Location
        Me.Width = 80
        Me.Opacity = 0
        'Debug.Print("Loaded";)
        defColor = Color.FromArgb(60, Color.White)
        PB.Width = 70
        PB.Height = 70
        PB.Left = 5
        PB.Top = 12
        Tim.Interval = 100
        Tim.Enabled = True
    End Sub

    Private Sub Tim_Tick(ByVal sender As Object, ByVal e As System.EventArgs) Handles Tim.Tick

        If Not InRect Then
            If actRect.Contains(Control.MousePosition) Then
                InRect = True
                'Debug.Print("Comtain";)
                'Tim.Enabled = False
                For a = 0 To 1 Step 0.02
                    Me.Opacity = a
                    Me.Left = (scrRect.X + 80) - a * 80
                    Me.Refresh()
                Next
                'Me.Visible = True
            End If
        Else
            If Not scrRect.Contains(Control.MousePosition) Then
                InRect = False
                'Debug.Print("Comtain";)
                'Tim.Enabled = False
                For a = 1 To 0 Step -0.07
                    Me.Opacity = a
                    Me.Left = scrRect.X + (80 - a * 80)
                    'Me.Left = (scrRect.X - 80) + a * 80
                    Me.Refresh()
                Next
                'Me.Visible = False
            End If
        End If
        'Debug.Print("Tick";)
    End Sub

    Private Sub PB_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles PB.MouseDown
        PB.BorderStyle = BorderStyle.Fixed3D
    End Sub

    Private Sub PB_MouseEnter(ByVal sender As Object, ByVal e As System.EventArgs) Handles PB.MouseEnter
        PB.BackColor = defColor
    End Sub

    Private Sub PB_MouseLeave(ByVal sender As Object, ByVal e As System.EventArgs) Handles PB.MouseLeave
        PB.BackColor = Color.Transparent
    End Sub

    Private Sub PB_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles PB.MouseUp
        PB.BorderStyle = BorderStyle.None
    End Sub

End Class

Ответить

Номер ответа: 4
Автор ответа:
 Боцман



ICQ: 295725312 

Вопросов: 53
Ответов: 830
 Web-сайт: Rus-Skipper.narod.ru
 Профиль | | #4
Добавлено: 26.04.07 16:04
Но как теперь её удалить? та кнопку а не справку! :)) Вообще то есть пункт очистить кнопку.
Насчет дизайна, каких по началу у меня не было и кубик рубика и типа комнаты с книжными шкафами,
Ходишь и выбираешь нужную книгу. ВСе надоедает и остановился на TurboLaunch. функциональна, а это главное. И так привык, что решил сделать копию, но по своему. В 10 раз меньше по размеру файла, возможность изменять окно в реальном времени, отсутствие прилипаемости к краям, мне удобнее иногда ее просто почти полностью задвинуть за экран. Возможности оставил с запасом, до 10 групп до 30 файлов в каждой. Насчет мерцания разберусь.
ObjectDock от ViS_ты, весит 12 метров куда мне до него? avdey с NET не дружу, может как нибудь попробую.
Интерестно ObjectDock тоже 300 программ потянет, и как это будет выглядеть? Это вопрос из любопытства всего лишь.
К стати увеличение рисунка при наведении возможно, просто нужно кое что переписать, дело в том , что это рисунок самой кнопки, а не PictureBox_са, их на форме всего два, не считая 5 скинов.

Ответить

Номер ответа: 5
Автор ответа:
 D o c a l



ICQ: 408802757 

Вопросов: 76
Ответов: 985
 Web-сайт: www.doc-source.pp.net.ua/
 Профиль | | #5
Добавлено: 26.04.07 21:26
Боцман у меня ета версия проги не показивает Ico файлов.Почему?Посмотри?У меня XP Professional sp2

Ответить

Номер ответа: 6
Автор ответа:
 Боцман



ICQ: 295725312 

Вопросов: 53
Ответов: 830
 Web-сайт: Rus-Skipper.narod.ru
 Профиль | | #6
Добавлено: 26.04.07 22:43
 ;Docal У меня XP Professional sp2 то же, но все работает.
По почте дал тебе исходник, смотри сам.

Ответить

Номер ответа: 7
Автор ответа:
 Боцман



ICQ: 295725312 

Вопросов: 53
Ответов: 830
 Web-сайт: Rus-Skipper.narod.ru
 Профиль | | #7
Добавлено: 26.04.07 23:58
Ребята если кто то хочет подучить, или просто так посмотреть, исходник вышлю.Здесь не надо афишировать, просто стукните на мыло "ВЫШЛИ" и все. Кто подучит огромное СПАСИБО, а то я как глухонемой в коморке здесь сижу, не посоветоватся, не поговорить, об этом не скем.

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам