|
|
|
Установка координат обьекта - SendMessageA
|
|||
|---|---|---|---|
|
#18+
Hello ............... Создан обьект, свойства Left,Rigth недоступны set A = New ClassA A.Left - отсутствуют Чем правильно уставновить координаты, полагаю через SendMessageA Но не знаю полного синтаксиса и типа Подкиньте код или ссылку ..... Спасибо ! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2007, 14:51 |
|
||
|
Установка координат обьекта - SendMessageA
|
|||
|---|---|---|---|
|
#18+
если ваш созданный объект имеет hwnd , то можете его явно спозиционировать с помощью функции SetWindowPos Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2007, 15:54 |
|
||
|
Установка координат обьекта - SendMessageA
|
|||
|---|---|---|---|
|
#18+
Момент - но эта функция для работы с окнами ????? Или это не имеет значения в моем случае тип обьекта - ProgressBar ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2007, 18:26 |
|
||
|
Установка координат обьекта - SendMessageA
|
|||
|---|---|---|---|
|
#18+
ProgressBar это тоже окно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2007, 18:40 |
|
||
|
Установка координат обьекта - SendMessageA
|
|||
|---|---|---|---|
|
#18+
Что не так делаю ?????????????? Указатель на обьект возвращет 0 B.hwnd = 0 - а что необходимо еще сделать ? Private Type BarRect Left As Long Top As Long Right As Long Bottom As Long End Type Private Const SWP_NOSIZE = &H1 Private Const SWP_NOZORDER = &H4 Private Const SWP_NOACTIVATE = &H10 Private Const SW_NORMAL = 1 Private Const SW_MINIMIZE = 2 Private Const SW_MAXIMIZE = 3 Private Const SW_SHOW = 9 Private Declare Function ShowWindow Lib "user32" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long Private Declare Function GetActiveWindow Lib "user32" () As Long Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long Private Declare Function SetParent Lib "user32" (ByVal hWndChild As Long, ByVal hWndNewParent As Long) As Long Private Declare Function GetWindowRect Lib "user32" (ByVal hwnd As Long, lpRect As BarRect) As Long Private Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long Private Sub Command1_Click() Dim H As Long, R As BarRect, B As ProgressBar H = GetActiveWindow Call GetWindowRect(H, R) Set B = New ProgressBar MsgBox B.hwnd - здесь hwnd = 0 Call SetParent(B.hwnd, H) Call SetWindowPos(B, 0, 5, 5, 50, 50, SWP_NOSIZE Or SWP_NOZORDER Or SWP_NOACTIVATE) Call ShowWindow(B, SW_SHOW) MsgBox Format(Hex(H), "00000000") & " " & R.Left & " " & R.Top & " " & R.Right & " " & R.Bottom Set B = Nothing End Sub ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2007, 21:26 |
|
||
|
Установка координат обьекта - SendMessageA
|
|||
|---|---|---|---|
|
#18+
Если хочешь работать через WinAPI, то забудь про ProgressBar, если хочешь работать через ProgressBar, то нет смысла в WinAPI :) Например, если есть окно или форма в терминах VB, и указатель на это окно записан в w, то можно вот так вот сделать на окне прогрессбар и прижать к нижнему краю... Код: plaintext 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.01.2007, 21:52 |
|
||
|
Установка координат обьекта - SendMessageA
|
|||
|---|---|---|---|
|
#18+
Конструкция Controls.Add(New ProgressBar) у меня не работает ????? А такой синтаксис требует лицензии на обьект Option Explicit Private WithEvents btnObj As CommandButton Private WithEvents cmdBar As ProgressBar Private Sub btnObj_Click() MsgBox "This is a dynamically added button." End Sub Private Sub Command1_Click() Set btnObj = Controls.Add("VB.CommandButton", "btnObj") btnObj.Visible = True btnObj.Width = 2000 btnObj.Caption = "Hello" btnObj.Top = 1000 btnObj.Left = 1000 MsgBox "Created " & Controls(1).Name MsgBox "Create ProgressBar" Licenses.Add "MSComctlLib.ProgCtrl.2", "????????????" - надо полагать здесь Set cmdBar = Controls.Add("MSComctlLib.ProgCtrl.2", "cmdBar") cmdBar.Visible = True End Sub ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2007, 00:16 |
|
||
|
Установка координат обьекта - SendMessageA
|
|||
|---|---|---|---|
|
#18+
HOME_X, если читать сообщения об ошибках, то, "что характерно" ((с) Леонид Ильич), всё получается. Первое сообщение говорит: лицензию добавлять не надо, уже есть. Второе сообщение говорит: уберите в опциях проекта галочку "Remove information about unused ActiveX Controls". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2007, 03:26 |
|
||
|
Установка координат обьекта - SendMessageA
|
|||
|---|---|---|---|
|
#18+
Факт - согласен ............ Смотрю в книгу видим .............EXCEL Спасибо - дочитал ...... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2007, 10:35 |
|
||
|
Установка координат обьекта - SendMessageA
|
|||
|---|---|---|---|
|
#18+
Остаеться внедрить созданный обьект в "OutLook".СommandBar Сейчас попробую............. Спасибо господа - буду учиться читать внимательно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2007, 10:43 |
|
||
|
Установка координат обьекта - SendMessageA
|
|||
|---|---|---|---|
|
#18+
Ну не все ..... так хорошо ..... Здесь получаеться несовместимость передаваемых типов Добавление элемента к обьекту CommandBar предполагает набор других типов ? Controls.Add( Type, Id, Parameter, Before, Temporary ) CommndBars - это некий дочерный обьект, .Add - его локальный метод (вряд-ли он унаследован от родителя) А как выйти на родителя - у него наверняка будет классические параметры Add ?? Верно - нет ? Private cmBars As CommandBar Private WithEvents obPBar As ProgressBar Private Sub btExes_Click(ByVal Ctrl As Office.CommandBarButton, CancelDefault As Boolean) Set obPBar = cmBars.Controls.Add("MSComctlLib.ProgCtrl.2", "obPBar") - ошибка типов obPBar.Left = 1 obPBar.Top = 1 obPBar.Height = 23 obPBar.Width = 120 obPBar.Visible = True obPBar.Value = 50 End Sub ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.01.2007, 18:21 |
|
||
|
|

start [/forum/topic.php?fid=60&msg=34275472&tid=2164642]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
172ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
| others: | 235ms |
| total: | 497ms |

| 0 / 0 |
