Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.87/30: Рейтинг темы: голосов - 30, средняя оценка - 4.87
 Аватар для radlif
44 / 44 / 3
Регистрация: 18.12.2011
Сообщений: 577

Контрол с прозрачностью и hwnd, hdc?

26.09.2013, 17:57. Показов 7828. Ответов 95
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Народ какой контрол можно использовать в качестве экрана и при этом он имел прозрачность наподобие label?
Знаю что label это не контрол и у него нет не hwnd, не hdc.
Хотел использовать Picturebox но его судя по темам в нэте прозрачным сделать нереально или же надо километровую портянку кода писать.
Если задать с помощью SetLayeredWindowAttributes форме цвет который она будет считать прозрачным
то контрол залитый этим цветом делает дырку сквозь форму..
На сам контрол же эта функция не действует.

И 2 вопрос, какой компонент можно использовать в качестве буфера для изображения наподобие Picturebox
но при этом не загружать его на форму и обращаться к его изображению по hdc?
Тоесть буфер.hdc пробовал Picturebox но если его не выводить на форму ругается на отсутствие with, set.

Не по теме:


Благодаря The trick открыл для себя api функцию AlphaBlend и увидел как много с помощью её можно делать
но мелкософтовцы и тут подлянку устроили не предоставив подходящего полигона для рисования....

0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
26.09.2013, 17:57
Ответы с готовыми решениями:

Подскажите - как переконвертировать gif с прозрачностью - в swf с прозрачностью
Всем привет. У меня есть gif с прозрачностью, после конвертации в swf - прозрачность исчезла. Подскажите - как переконвертировать...

Для чего служит первый параметр (HWND hWnd) в функции WndProc?
// функция обработки сообщений LRESULT CALLBACK WndProc( HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam) Расшифруйте...

Окно на WinAPI, параметр функции WndProc (HWND hWnd,.)
Пытаюсь понять какое значение хранит первый параметр HWND hWnd в функции WndProc. В Windows в качестве окна может быть не только главное...

95
 Аватар для radlif
44 / 44 / 3
Регистрация: 18.12.2011
Сообщений: 577
29.09.2013, 18:22  [ТС]
Студворк — интернет-сервис помощи студентам
Я вывожу на прозрачном pichurebox том который ты с помощью сабкласинга сделал.
0
Модератор
10068 / 3913 / 886
Регистрация: 22.02.2013
Сообщений: 5,863
Записей в блоге: 79
29.09.2013, 18:25
Там надо при получении сообщения WM_PAINT, после отрисовки фона, уже свою отрисовку вызывать.
0
 Аватар для radlif
44 / 44 / 3
Регистрация: 18.12.2011
Сообщений: 577
29.09.2013, 18:33  [ТС]
Тоесть внутренности этого блока заменить.
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
        Case WM_PAINT
            Dim pWnd As Long, Pt As POINTAPI, RC As RECT
            
            pWnd = GetParent(hwnd)
            GetClientRect hwnd, RC
            
            MapWindowPoints hwnd, pWnd, Pt, 1
            RC.Left = Pt.X: RC.Top = Pt.Y: RC.Right = RC.Left + RC.Right: RC.Bottom = RC.Top + RC.Bottom
            RedrawWindow pWnd, RC, 0, RDW_UPDATENOW Or RDW_NOCHILDREN Or RDW_INVALIDATE
            
            ValidateRect hwnd, ByVal 0
        Case Else
            Prev = GetProp(hwnd, "prev")
            WndProc = CallWindowProc(Prev, hwnd, uMsg, wParam, lParam)
    End Select
Тогда такой вопрос, после того как я наложил своё изображение на изображение в
pichurebox после Refresh оно останется с прозрачной подложкой или появится родной
фон?
0
Модератор
10068 / 3913 / 886
Регистрация: 22.02.2013
Сообщений: 5,863
Записей в блоге: 79
29.09.2013, 18:36
Тогда не надо вызывать Refresh. Refresh - по сути вызывает перерисовку т.е. WM_PAINT.
0
 Аватар для radlif
44 / 44 / 3
Регистрация: 18.12.2011
Сообщений: 577
29.09.2013, 18:44  [ТС]
А вариант AlphaBlend в Image через StdPicture не прокатит?)

Не по теме:


Жуткая непруха с WndProc, то среда слетит то проц под 100% :)

0
Модератор
10068 / 3913 / 886
Регистрация: 22.02.2013
Сообщений: 5,863
Записей в блоге: 79
29.09.2013, 20:36
Лучший ответ Сообщение было отмечено The trick как решение

Решение

Цитата Сообщение от radlif Посмотреть сообщение
А вариант AlphaBlend в Image через StdPicture не прокатит?)
Наверное можно, но это очень кривое решение, тоже самое что из пушки по воробьям.
Правильно - это делать отрисовку в WM_PAINT. Это независимо от Autoredraw. Можно сделать как в примере ниже, только вместо метода Cls, надо вызывать функцию ClearBackground, а в остальном полная поддержка Autoredraw.
Кликните здесь для просмотра всего текста
Форма:
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
Private Declare Function CreateCompatibleDC Lib "gdi32" (ByVal hdc As Long) As Long
Private Declare Function SelectObject Lib "gdi32" (ByVal hdc As Long, ByVal hObject As Long) As Long
Private Declare Function DeleteDC Lib "gdi32" (ByVal hdc As Long) As Long
Private Declare Function AlphaBlend Lib "msimg32.dll" (ByVal hdc As Long, ByVal lInt As Long, ByVal lInt As Long, ByVal lInt As Long, ByVal lInt As Long, ByVal hdc As Long, ByVal lInt As Long, ByVal lInt As Long, ByVal lInt As Long, ByVal lInt As Long, ByVal BLENDFUNCT As Long) As Long
 
Private Const AB_32Bpp255 = 33488896
 
Dim Img As StdPicture, DC As Long, oBmp As Long
 
Private Sub cmdFrame_Click()
    Static Frame As Long
    
    ClearBackground pic.hwnd
    
    oBmp = SelectObject(DC, Img.Handle)
    AlphaBlend pic.hdc, 0, 0, 128, 128, DC, 0, Frame * 128, 128, 128, AB_32Bpp255
    SelectObject DC, oBmp
    
    pic.Refresh
    
    Frame = (Frame + 1) Mod 21
End Sub
 
Private Sub Form_Load()
    MakeTransparent pic
    DC = CreateCompatibleDC(pic.hdc)
    Set Img = LoadPicture(App.Path & "\seq.bmp")
End Sub
 
Private Sub Form_Unload(Cancel As Integer)
    RemoveTransparent pic
    DeleteDC DC
End Sub
Модуль
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
Option Explicit
 
Private Type RECT
    Left As Long
    Top As Long
    Right As Long
    Bottom As Long
End Type
Public Type POINTAPI
  x As Long
  y As Long
End Type
Public Type PAINTSTRUCT
  hdc As Long
  fErase As Long
  rcPaint As RECT
  fRestore As Long
  fIncUpdate As Long
  rgbReserved(31) As Byte
End Type
 
Private Declare Function BeginPaint Lib "user32" (ByVal hwnd As Long, lpPaint As PAINTSTRUCT) As Long
Private Declare Function EndPaint Lib "user32" (ByVal hwnd As Long, lpPaint As PAINTSTRUCT) As Long
Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Private Declare Function SetProp Lib "user32" Alias "SetPropA" (ByVal hwnd As Long, ByVal lpString As String, ByVal hData As Long) As Long
Private Declare Function GetProp Lib "user32" Alias "GetPropA" (ByVal hwnd As Long, ByVal lpString As String) As Long
Private Declare Function RemoveProp Lib "user32" Alias "RemovePropA" (ByVal hwnd As Long, ByVal lpString As String) As Long
Private Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" (ByVal lpPrevWndFunc As Long, ByVal hwnd As Long, ByVal Msg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
Private Declare Function MapWindowPoints Lib "user32" (ByVal hwndFrom As Long, ByVal hwndTo As Long, lppt As Any, ByVal cPoints As Long) As Long
Private Declare Function GetParent Lib "user32" (ByVal hwnd As Long) As Long
Private Declare Function RedrawWindow Lib "user32" (ByVal hwnd As Long, lprcUpdate As RECT, ByVal hrgnUpdate As Long, ByVal fuRedraw As Long) As Long
Private Declare Function GetClientRect Lib "user32" (ByVal hwnd As Long, lpRect As RECT) As Long
Private Declare Function BitBlt Lib "gdi32" (ByVal hDestDC As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal ySrc As Long, ByVal dwRop As Long) As Long
Private Declare Function GetMem4 Lib "msvbvm60" (pSrc As Any, pDst As Any) As Long
Private Declare Function GetDC Lib "user32" (ByVal hwnd As Long) As Long
Private Declare Function ReleaseDC Lib "user32" (ByVal hwnd As Long, ByVal hdc As Long) As Long
 
Private Const GWL_WNDPROC = &HFFFFFFFC
Private Const WM_PAINT = &HF
Private Const RDW_UPDATENOW = &H100&  ' Causes the affected windows to receive WM_NCPAINT, WM_ERASEBKGND, and WM_PAINT messages
Private Const RDW_INVALIDATE = &H1
Private Const RDW_NOCHILDREN = &H40
Private Const AB_32Bpp255 = 33488896
 
Public Sub MakeTransparent(Control As Object)
    Dim Prev As Long, hwnd As Long
    
    hwnd = Control.hwnd
    Prev = SetWindowLong(hwnd, GWL_WNDPROC, AddressOf WndProc)
    SetProp hwnd, "prev", Prev
    SetProp hwnd, "ptr", ObjPtr(Control)
End Sub
Public Sub RemoveTransparent(Control As Object)
    Dim Prev As Long, hwnd As Long
    
    hwnd = Control.hwnd
    Prev = GetProp(hwnd, "prev")
    SetWindowLong hwnd, GWL_WNDPROC, Prev
    RemoveProp hwnd, "prev"
    RemoveProp hwnd, "ptr"
End Sub
 
Function WndProc(ByVal hwnd As Long, ByVal uMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
    Dim Prev As Long
    Dim ps As PAINTSTRUCT
    Select Case uMsg
    Case WM_PAINT
        BeginPaint hwnd, ps
        Paint hwnd, ps
        EndPaint hwnd, ps
        WndProc = 0
    Case Else
        Prev = GetProp(hwnd, "prev")
        WndProc = CallWindowProc(Prev, hwnd, uMsg, wParam, lParam)
    End Select
End Function
Public Sub ClearBackground(hwnd As Long)
    Dim Ptr As Long, Obj As Object, dDc As Long, sDc As Long, rc As RECT, pWnd As Long, Pt As POINTAPI
    On Error Resume Next
    Ptr = GetProp(hwnd, "ptr")
    If Ptr Then
        GetMem4 Ptr, Obj
        dDc = Obj.hdc: sDc = GetDC(hwnd)
        pWnd = GetParent(hwnd)
        GetClientRect hwnd, rc
        MapWindowPoints hwnd, pWnd, Pt, 1
        rc.Left = Pt.x: rc.Top = Pt.y: rc.Right = rc.Left + rc.Right: rc.Bottom = rc.Top + rc.Bottom
        RedrawWindow pWnd, rc, 0, RDW_UPDATENOW Or RDW_NOCHILDREN Or RDW_INVALIDATE
        BitBlt dDc, 0, 0, rc.Right, rc.Bottom, sDc, 0, 0, vbSrcCopy
        ReleaseDC hwnd, sDc
        GetMem4 0, Obj
    End If
End Sub
Private Sub Paint(hwnd As Long, ps As PAINTSTRUCT)
    Dim DC As Long, Ptr As Long, Obj As Object
    On Error Resume Next
    Ptr = GetProp(hwnd, "ptr")
    If Ptr Then
        GetMem4 Ptr, Obj
        DC = Obj.hdc
        BitBlt ps.hdc, ps.rcPaint.Left, ps.rcPaint.Top, _
                   ps.rcPaint.Right - ps.rcPaint.Left, _
                   ps.rcPaint.Bottom - ps.rcPaint.Top, _
                   DC, ps.rcPaint.Left, ps.rcPaint.Top, vbSrcCopy
        GetMem4 0, Obj
    End If
 
End Sub
Вложения
Тип файла: rar TransparentPictureBox2.rar (235.1 Кб, 25 просмотров)
1
 Аватар для radlif
44 / 44 / 3
Регистрация: 18.12.2011
Сообщений: 577
29.09.2013, 20:49  [ТС]
Кст есть вопрос )
Кликните здесь для просмотра всего текста
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Function WndProc(ByVal hwnd As Long, ByVal uMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
    Dim Prev As Long
 
    Select Case uMsg
    Case WM_PAINT 
'1.................
        Dim pWnd As Long, Pt As POINTAPI, RC As RECT
        
        pWnd = GetParent(hwnd)
        GetClientRect hwnd, RC
        
        MapWindowPoints hwnd, pWnd, Pt, 1
        RC.Left = Pt.x: RC.Top = Pt.y: RC.Right = RC.Left + RC.Right: RC.Bottom = RC.Top + RC.Bottom
        RedrawWindow pWnd, RC, 0, RDW_UPDATENOW Or RDW_NOCHILDREN Or RDW_INVALIDATE
 
        ValidateRect hwnd, ByVal 0
' end 1........................
    Case Else
        Prev = GetProp(hwnd, "prev")
        WndProc = CallWindowProc(Prev, hwnd, uMsg, wParam, lParam)
    End Select
End Function

Как я понимаю в этой функции у тебя крутится цикл в ожидание
WM_PAINT так вот как после получения сообщения и выполнения действия
в блоке 1 запустить цикл дальше?
Пробовал функцией возвращать 1 но всё равно подгружает проц
Ещё заметил что этот блок прокручивается много раз
воткнув в него счётчик, причём независимо была прорисовка или нет.

Не по теме:


Редактор раз 20 перезапустил :)

0
Модератор
10068 / 3913 / 886
Регистрация: 22.02.2013
Сообщений: 5,863
Записей в блоге: 79
29.09.2013, 21:05
Цитата Сообщение от radlif Посмотреть сообщение
Как я понимаю в этой функции у тебя крутится цикл в ожидание
WM_PAINT так вот как после получения сообщения и выполнения действия
в блоке 1 запустить цикл дальше?
Это оконная функция, при наступлении событий окну отправяются сообщения и функция их обрабатывает. Данная ф-ци обрабатывает только WM_PAINT, остальные обрабатываются как обычно. Функция должна возвратить 0, если она обработала WM_PAINT.
Цитата Сообщение от radlif Посмотреть сообщение
Ещё заметил что этот блок прокручивается много раз
воткнув в него счётчик, причём независимо была прорисовка или нет.
Если вызывается много раз, значит была перерисовка, т.к. в обработчике регион обновления обнуляется.
Цитата Сообщение от radlif Посмотреть сообщение
Редактор раз 20 перезапустил
Останавливать надо закрытием окна, а не кнопкой.
1
 Аватар для radlif
44 / 44 / 3
Регистрация: 18.12.2011
Сообщений: 577
29.09.2013, 21:41  [ТС]
Кст от моргания при смене изображения можно избавится?
0
Модератор
10068 / 3913 / 886
Регистрация: 22.02.2013
Сообщений: 5,863
Записей в блоге: 79
29.09.2013, 22:37
Цитата Сообщение от radlif Посмотреть сообщение
Кст от моргания при смене изображения можно избавится?
Моргает из-за того, что сначала стирается фон, а только потом рисуется картинка. Чтобы не моргало надо сразу фон с картинкой выводить.
0
 Аватар для radlif
44 / 44 / 3
Регистрация: 18.12.2011
Сообщений: 577
29.09.2013, 22:48  [ТС]
Вообще по идее надо длл писать для такого фона и чтоб она обрабатывала не только смену изображения но и
смену фона под ним, а то сейчас сменил картинку фоновую, а под кнопкой остался кусок фона
0
Модератор
10068 / 3913 / 886
Регистрация: 22.02.2013
Сообщений: 5,863
Записей в блоге: 79
29.09.2013, 22:52
Если ты меняешь картинку, то надо обновлять фон - это вариант для поддержки Autoredraw'а, а если делать без, то можно не беспокоится, картинка сама перерисуется, когда родитель перерисуется.
0
Заблокирован
23.10.2013, 13:41
Цитата Сообщение от morgann55 Посмотреть сообщение
Прозрачность формы и непрозрачность Label
А как зделать прозрачным контрол а не форму, а на контроле разместить лейбл ????

Цитата Сообщение от radlif Посмотреть сообщение
The trick, ты судя по всему программист с огромным стажем, либо любитель
который лет 10 кодит в vb
лет сто )))
0
Модератор
10068 / 3913 / 886
Регистрация: 22.02.2013
Сообщений: 5,863
Записей в блоге: 79
23.10.2013, 13:48
Цитата Сообщение от JoraVoenyjHaker Посмотреть сообщение
А как зделать прозрачным контрол а не форму, а на контроле разместить лейбл ????
Лейбл - это не окно, это инструкция нарисовать там-то и там-то. При отрисовке контрола родителя проверять дочерние контролы и если есть в них лейбл, рисовать на себе вручную через TextOut, DrawText и т.п. функции.
0
Заблокирован
23.10.2013, 13:59
проще тогда использовать Print ?

Добавлено через 4 минуты
Помните вы скидывали код с прозрачностью формы
так вот с UserControl такое не катит, цвета остаются

Добавлено через 2 минуты
в идеале я бы хотел получить BackColor у Frame
невидимым, а рамку видимой, и лейбл тоже видимым
0
Модератор
10068 / 3913 / 886
Регистрация: 22.02.2013
Сообщений: 5,863
Записей в блоге: 79
23.10.2013, 14:08
Цитата Сообщение от JoraVoenyjHaker Посмотреть сообщение
проще тогда использовать Print ?
Зависит от задачи. Если используется сабклассинг, проще и лучше Api использовать. К тому же через Print сложно сделать обрезку текста. Также надо еще очищать фон, если фон непрозрачный у лейбла.

Добавлено через 8 минут
Цитата Сообщение от JoraVoenyjHaker Посмотреть сообщение
так вот с UserControl такое не катит, цвета остаются
Конечно, в описании функции явно написано
Обратите внимание! что этот стиль не может быть использован для дочерних окон. Также он не может быть использован, если окно имеет стиль класса или установленные флажки стиля CS_OWNDC или CS_CLASSDC.
Почитай про отрисовку в WinApi, иначе ты так и не поймешь как реализовать прозрачность.
Цитата Сообщение от JoraVoenyjHaker Посмотреть сообщение
в идеале я бы хотел получить BackColor у Frame
невидимым, а рамку видимой, и лейбл тоже видимым
Отрисовывай фон под фреймом потом дочерние контролы, если не надо не рисуй фон у фрейма. Можно также применить стиль WS_EX_TRANSPARENT для фрейма, тогда ClipControls можно оставить в True
0
Заблокирован
23.10.2013, 14:46
Пробовал TransParent-ы в свойствах переключать не помогает, может чтото не то делаю

Добавлено через 4 минуты
Цитата Сообщение от The trick Посмотреть сообщение
Можно также применить стиль WS_EX_TRANSPARENT для фрейма, тогда ClipControls можно оставить в True
возможно такое подойдёт, сейчас испытаю........

Добавлено через 33 минуты
BackColor белый
в итоге на форме фрейм всёравно белый
где тут ошибка ?

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Option Explicit
Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Private Declare Function SetLayeredWindowAttributes Lib "user32" (ByVal hwnd As Long, ByVal crKey As Long, ByVal bAlpha As Byte, ByVal dwFlags As Long) As Long
 
Const LWA_COLORKEY = &H1
Const GWL_EXSTYLE = (-20)
Const WS_EX_LAYERED = &H80000
Const WS_EX_TRANSPARENT = &H20&
 
Private Sub UserControl_Show()
 
   Dim Style As Long
   Style = GetWindowLong(usrFrame.hwnd, GWL_EXSTYLE) Or WS_EX_TRANSPARENT
   SetWindowLong usrFrame.hwnd, GWL_EXSTYLE, Style
   SetLayeredWindowAttributes usrFrame.hwnd, vbWhite, 0, LWA_COLORKEY 'Ключ
End Sub
 
'Initialize Properties for User Control
Private Sub UserControl_InitProperties()
    
    usrFrame.Caption = Ambient.DisplayName 'Имя
 
 
End Sub
0
Модератор
10068 / 3913 / 886
Регистрация: 22.02.2013
Сообщений: 5,863
Записей в блоге: 79
23.10.2013, 15:02

Цитата Сообщение от JoraVoenyjHaker Посмотреть сообщение
где тут ошибка ?
Цитата Сообщение от The trick Посмотреть сообщение
Почитай про отрисовку в WinApi, иначе ты так и не поймешь как реализовать прозрачность.
0
Заблокирован
23.10.2013, 15:18
WM_ERASEBKGND: Очистка фона окна
WM_PAINT: Рисование содержимого поверх фона

Это я то читаю ?
0
Модератор
10068 / 3913 / 886
Регистрация: 22.02.2013
Сообщений: 5,863
Записей в блоге: 79
23.10.2013, 15:33
Окрашивание и рисование
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
23.10.2013, 15:33

Почему переменная HWND hwnd объявлена дважды?
Один раз в функции WinMain: int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { HWND...

Найти HWND окна, зная HWND окна, породившего его
Здравствуйте! Имеется основное окно "А". Это окно создаёт новое недочернее окно "Б". Необходимо найти HWND окна "Б",...

Двигаю контрол мышкой по форме Access, но контрол движется медленнее мышки
сабж. код прилагаю. нид хелп Private Declare Function GetCursorPos Lib "user32.dll" (ByRef lpPoint As POINTAPI) As Boolean ...

Как можно изменить слой, на котором находится контрол? Чтобы один контрол всегда рисовался поверх другого?
Просто я создаю контролы динамически, и при появлении они всегда ниже созданных ранее, это проблема. Заранее спасибо!

HWND hwnd- получение...
Кто - нибудь знеет функцию получения указателя на окно HWND?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
60
Ответ Создать тему
Новые блоги и статьи
Запустил конкурс "тем и промптов для текстовых квестов созданных почти чисто ИИ"
Adler 06.10.2026
Всем привет! За последние три-четыре дня я создал более 16 текстовых квестовых игр используя преимущественно по одному запросу к ИИ на игру. Мне так понравилось смотреть все ветки/ сцены во всех. . .
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык. Возвращает он вот это: https:/ / i. **********/ vqBWLe2. png Нужную строчку в 3й колонке просто выдумал. . Это. . .
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor. Это. . .
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru