Search Results

Search results 1-20 of 80.

This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

  • Hi, I could run your example both in the simulation and on a target. So there is nothing wrong with your code. Do you have enough memory? emWin needs about 16KB of RAM for decompression of the GIF image. Best regards, Florian

  • Reading from SD card

    SEGGER - Florian - - emWin related

    Post

    Hi, I've tried to display your image with the sample, but nothing showed up on the screen. It worked fine with another BMP image though, so I guess something's wrong with your image file? You could convert it to another file type and still display it from external memory, which worked for me. Best regards, Florian

  • Hi, a loop like this keeps emWin alive: C Source Code (3 lines)I hope this solved your problem. Best regards, Florian

  • Reading from SD card

    SEGGER - Florian - - emWin related

    Post

    Hi, DWORD and HANDLE are types from the Win32-API, therefore these samples aren't to be used for any targets but rather on a Windows PC. I've attached a few samples that displays external images (BMP, GIF, JPEG, PNG and bitmap stream) from both the Windows simulation and on the target using emFile. I hope this helps. Best regards, Florian

  • Hi, GUI_SetOrientation() always worsens the performance since it uses a rotation device. What will probably work better is changing the display driver to rotate the screen, GUIDRV_Lin and GUIDRV_FlexColor still offer a good performance when rotated. To mirror the X and Y axis and use e.g. 32bpp, change the DISPLAY_DRIVER define in your LCDConf.c to: C Source Code (1 line)You'll find a full list of all supported orientations and color depths of this driver in the manual under "34.7.6 GUIDRV_Lin".…

  • ListView Maximum Rows

    SEGGER - Florian - - emWin related

    Post

    Hi, there is no real limit to how many rows you can add to a listview. The only actual limits would be your memory or the line count variable (unsigned int, therefore max. would be about 4 billion). Best regards, Florian

  • Hi, this can be done using the function GUI_BMP_Serialize(). There's an example in the manual on how to do this under Windows: C Source Code (19 lines)I hope this helps. If you have anymore questions, please let me know. Best regards, Florian

  • Hello Amir, unfortunately I wasn't able to reproduce this behavior. Could you provide me code that I can execute to reproduce this? Best regards, Florian

  • Flash memory almost full

    SEGGER - Florian - - emWin related

    Post

    Hi bio_med, this depends on any of the additional modules being active or not. If modules like the Window Manager, Widgets or Memory Devices are active, ~50KB of ROM usage are realistic. Best regards, Florian

  • Hi Amir, thank you for your suggestions, we will consider adding them to emWin. Although, both of this can already be achieved with emWin using skinning. Several text labels for a button are pretty easy to do, you need to set a skinning routine that displays the texts based on BUTTON_IsPressed() in the WIDGET_ITEM_DRAW_TEXT case. A custom color for each MULTIPAGE tab can be done similarly, by setting a skinning routine. When the background is drawn in the WIDGET_ITEM_DRAW_BACKGROUND case, the us…

  • Hi, it isn't being drawn correctly since you are drawing in the WM_NOTIFY_PARENT case, but you should only draw in WM_PAINT cases! WM_KEY messages are sent to the window that has input focus. But by default windows can't receive input focus, so this has to be implemented manually. I've attached a sample that does this, you need to copy the cases WM_SET_ID, WM_GET_ID, WM_SET_FOCUS and WM_PID_STATE_CHANGED from _cbWin to your callback. Best regards, Florian

  • Button transparency

    SEGGER - Florian - - emWin related

    Post

    Hi, BUTTON_SetBkColor() only works when not using skinning. The best way to display a button transparent would be to set a callback routine and do nothing, since the button is already a transparent window. What exactly do you mean by transparent background? Thanks and best regards, Florian

  • Hi, generally, you should call GUI_Clear() before you draw anything so the window area gets cleared before something is drawn. Otherwise there could remain artifacts on the screen. Could you provide me with a little more code so I know what is happening exactly? Thanks and best regards, Florian

  • Hi, it looks like transparency is the issue here. Could you send me the code of this bitmap or tell me which bitmap format it is? Best regards, Florian

  • how to use touch in emwin

    SEGGER - Florian - - emWin related

    Post

    Hi, I've attached a sample PIDConf.c for the STM32F746G-Disco which you can take as reference. You have to handle the touch input in the routine PID_X_Exec(). Most important is that you get the touch input by calling the routine that polls the touch data from the touch controller. In this example this is done with BSP_TS_GetState(&TS_State). This data then needs to be sent to emWin by calling GUI_TOUCH_StoreStateEx(&StatePID). Best regards, Florian

  • Hi, you can only draw in the WM_PAINT case of the _cbBk callback routine. All of the drawing has to be done there. Redrawing windows can be done at any time by simply calling WM_InvalidateWindow(). Best regards, Florian

  • Hi, the set owner draw function should define what should be drawn when the widget is disabled. When the widget has the owner draw routine set, is disabled and invalidated, it should be drawn according to the disabled state. Best regards, Florian

  • EMWin Scrollbar problem

    SEGGER - Florian - - emWin related

    Post

    Hi jona, this behavior sounds like when pressing and holding the left/right arrow keys of a scrollbar. I'm wondering, why are you using scrollbars instead of slider widgets? Slider widgets don't have left/right arrow keys on the edges, so the thumb would not be accidentally moved. Note that when calling WM_InvalidateWindow(), the window and all its child windows are redrawn, if the window is transparent. But the invalidation of your widgets could have a lot of reasons, I can't really tell withou…

  • Circular Gradient

    SEGGER - Florian - - emWin related

    Post

    Hi, the arc doesn't get fully redrawn. You can redraw the window e.g. by calling WM_InvalidateWindow(pMsg->hWin) after the value has been updated. Also calling WM_MULTIBUF_Enable(1) could come in handy to avoid flickering. Best regards, Florian

  • PNG image upload

    SEGGER - Florian - - emWin related

    Post

    Hi, I've tried adding a PNG image using the GUIBuilder and it worked just fine. What exactly do you mean by "I don't want to see box type images for TFT"? Best regards, Florian