Click here to Skip to main content
12,397,244 members (60,787 online)
Click here to Skip to main content
Add your own
alternative version

Stats

393.7K views
13.3K downloads
144 bookmarked
Posted

A picture based skin system and MPEG decoder

, 27 Jul 2000
Rate this:
Please Sign up or sign in to vote.
A picture based skin system for MFC that allows the user to customise their dialogs. The system is demonstrated by presenting a fully functioning MPEG decoder application.
<!-- Download Links -->
  • Download sample executable - 164 Kb
  • Download demo project - 314 Kb
  • <!-- Article image -->

    Sample Image - skinsyse.jpg

    <!-- Main HTML starts here -->

    SkinSys Ver 1.0

    A picture based skin system For MFC. Based on FriendSoft's (www.yeah.net/FriendSoft) SkinForm.

    SkinSys is copyright 2000 Cüneyt ELÝBOL (www.celibol.freeservers.com)

    Includes

    • CSkinsys codes
    • Simple Skin Editor
    • A Beatiful MPEG 1,2,3 decoder (Copyright www.eldos.org - Based On MAPlay Decoder)
    • MPEGPlayer project (not completed. It is only a sample)

    Directories

    • Decoder: MPEG Decoder codes
    • Editor : Skineditor Files
    • Sample : Sample Skin Files
    • SkinSys: CSkinsys Source Code
    • Root : MPEGPlayer Project

    Requirement

    This system only requires the "OleLoadPicture" Function. (Please see the LoadPictureFile function in Skindialog.cpp)

    How To Use:

    Please read these notes and see the Sample Directory and MPEGPlayer project

    1. Draw mask bitmap
    2. Draw main Bitmap
    3. If you need or want
      1. Draw mouse over bitmap
      2. Draw mouse down bitmap
      3. Draw disable bitmap
    4. Run Skineditor
    5. Select "Screens" Tab
    6. Fill All Pictures
    7. If you want select "Preview" Button
    8. Save and exit
    9. Run Visual Studio
    10. Create a Dialog based new Project (for example Dialog Name = CBaseDialog)
    11. Include "SkinDialog.h" (for example in "StdAfx.h")
    12. Change to CBaseDialog : public CDialog to CBaseDialog : public CSkinDialog
    13. Go to CBaseDialog::OnInitDialog and add these lines
      char m_skin[512];
      sprintf(m_skin, "<Your Skin Name>");
      
      // If you want a menu < Activate to Right click > add this line
      SetMenuID(IDR_MAINMENU);
      
      // If you Want Caption 
      SetWindowText("MPEG Player");
      
      // Set To My SkinFile
      SetSkinFile(m_skin);
      
      CSkinDialog::OnInitDialog();
      
    14. Compile and Run;

    Controlling Buttons Click, Trackbar, ProgressBar, Text and etc...

    If you want these events in the Base Class (CSkinDialog)

    1. void ProgresChanged(CString m_Name); // If progress changes
    2. void MouseMoved(CString m_ButtonName, int x, int y); // if Mouse Moved
    3. void TrackChange(CString m_ButtonName, UINT nSBCode, UINT nPos); // if Trackbar change
    4. void ButtonPressed(CString m_ButtonName); // if Button Pressed

    you should add these functions your CBaseDialog class.

    Changing the tooltip

    use Set<xxx>ToolTip function. <xxx> is Button, Text...
    (for example SetButtonToolTip("BUTTON_USEEQ", "Equalizer is On");

    Getting Value

    use Get<xxx> Function
    (for example: BOOL useEQ = GetButtonCheck("BUTTON_USEEQ"); // if BUTTON_USEEQ checked)

    Setting Value

    use Set<xxx> Function
    (for example: SetButtonCheck("BUTTON_USEEQ", useEQ);
    // if useEQ = True BUTTON_USEEQ is checked)

    Notes:

    Thanks for your interest in CSkinsys. This is the first release, and may have bugs and errors. Please report any bugs or errors, or any questions to me.

    License

    This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

    A list of licenses authors might use can be found here

    Share

    About the Author

    No Biography provided

    You may also be interested in...

    Comments and Discussions

     
    Questionsome bugs. but good Pin
    Member 90491296-Dec-12 15:45
    memberMember 90491296-Dec-12 15:45 
    GeneralMy vote of 4 Pin
    hoseinhero27-Jun-12 22:55
    memberhoseinhero27-Jun-12 22:55 
    GeneralI want some part of main image to be transparent. Pin
    ekklesia22-Nov-08 19:32
    memberekklesia22-Nov-08 19:32 
    Generalvery good! Pin
    yangwm2521-Oct-08 23:56
    memberyangwm2521-Oct-08 23:56 
    AnswerLoadSkins in ButtonPressed will cause the application crash Pin
    zhang.hong27-Aug-08 13:31
    memberzhang.hong27-Aug-08 13:31 
    GeneralThe mp3's during is not accurate Pin
    3651385278-Nov-07 20:48
    member3651385278-Nov-07 20:48 
    Generalcrash on the application [modified] Pin
    RajeevSahu26-Jun-07 23:01
    memberRajeevSahu26-Jun-07 23:01 
    QuestionIs the skinsys author still around? Pin
    1Bob27-Feb-06 4:19
    member1Bob27-Feb-06 4:19 
    GeneralStack corruption detected in VC++7.1 Pin
    1Bob16-Feb-06 8:06
    member1Bob16-Feb-06 8:06 
    Questionerror message: Pin
    aladeck15-Nov-05 16:42
    memberaladeck15-Nov-05 16:42 
    AnswerRe: error message: Pin
    -=Seph=-23-Nov-05 19:45
    member-=Seph=-23-Nov-05 19:45 
    Questionhow to combine skin &amp; resize function Pin
    sjhuang5-Jul-05 7:40
    membersjhuang5-Jul-05 7:40 
    Generalanother choice,uskin - personal free skin lib Pin
    thirdwolf26-Jun-05 17:34
    memberthirdwolf26-Jun-05 17:34 
    GeneralCSkinDialog not support XP and 98 Pin
    Reuven Eliahu25-May-05 7:33
    memberReuven Eliahu25-May-05 7:33 
    Generalcurrent good toolkits Pin
    lonestarr5-Sep-04 5:27
    memberlonestarr5-Sep-04 5:27 
    GeneralVolume progress disappear after closing a child window/dialog. Pin
    Kumori28-Jul-04 5:58
    memberKumori28-Jul-04 5:58 
    Questionwhy there is no picture on my dialog?? Pin
    gunslover10-Jun-04 22:40
    membergunslover10-Jun-04 22:40 
    AnswerRe: why there is no picture on my dialog?? Pin
    Yohi9-Aug-04 23:56
    memberYohi9-Aug-04 23:56 
    Generalreload a nother skin at run time Pin
    abo_moslem18-Mar-04 0:56
    memberabo_moslem18-Mar-04 0:56 
    GeneralRe: reload a nother skin at run time Pin
    sclhj2001@hotmail.com13-Apr-04 21:26
    membersclhj2001@hotmail.com13-Apr-04 21:26 
    GeneralText Alignment Pin
    jochen66614-Dec-03 4:29
    memberjochen66614-Dec-03 4:29 
    GeneralSkin Editor Pin
    Rachel2211-Nov-03 23:18
    memberRachel2211-Nov-03 23:18 
    GeneralSkinMagic Toolkit Pin
    jedyking13-Apr-03 4:58
    memberjedyking13-Apr-03 4:58 
    GeneralBug in SkinSlider Pin
    Zaharang2-Apr-03 21:06
    sussZaharang2-Apr-03 21:06 
    GeneralRe: SkinMagic SDK Library:The better solution for Skinnable application Pin
    PanayotisG25-Jan-03 18:05
    memberPanayotisG25-Jan-03 18:05 
    GeneralRe: SkinMagic SDK Library:The better solution for Skinnable application Pin
    pinkpanther12-Apr-03 12:47
    memberpinkpanther12-Apr-03 12:47 
    GeneralRe: SkinMagic SDK Library:The better solution for Skinnable application Pin
    CoolTool13-Apr-03 8:16
    sussCoolTool13-Apr-03 8:16 
    GeneralRe: SkinMagic SDK Library:The better solution for Skinnable application Pin
    The ~Coder13-Apr-03 8:27
    sussThe ~Coder13-Apr-03 8:27 
    Questionwhy i cann't download the skin program? Pin
    Anonymous13-Jan-03 16:48
    sussAnonymous13-Jan-03 16:48 
    AnswerRe: why i cann't download the skin program? Pin
    jedyking22-Jan-03 6:25
    memberjedyking22-Jan-03 6:25 
    AnswerRe: why i cann't download the skin program? Pin
    Philip Patrick31-Jan-03 10:26
    memberPhilip Patrick31-Jan-03 10:26 
    Questioncompile error ,who can help me? Pin
    Anonymous29-Oct-02 21:01
    sussAnonymous29-Oct-02 21:01 
    AnswerRe: compile error ,who can help me? Pin
    Anonymous31-Oct-02 16:30
    sussAnonymous31-Oct-02 16:30 
    GeneralRe: compile error ,who can help me? Pin
    Anonymous3-Nov-02 4:24
    sussAnonymous3-Nov-02 4:24 
    AnswerRe: compile error ,who can help me? Pin
    tanxin1248-Apr-07 19:10
    membertanxin1248-Apr-07 19:10 
    QuestionHow can i use this code Skinsys only ? Pin
    stdrunner20-Aug-02 23:56
    sussstdrunner20-Aug-02 23:56 
    AnswerRe: How can i use this code Skinsys only ? Pin
    Gethsus2-Sep-02 8:55
    memberGethsus2-Sep-02 8:55 
    GeneralModeless dialog not working Pin
    Amit Walecha18-Aug-02 19:35
    memberAmit Walecha18-Aug-02 19:35 
    GeneralCompiler Error...Why Pin
    jackqoo13-Aug-02 18:01
    sussjackqoo13-Aug-02 18:01 
    GeneralRe: Compiler Error...Why Pin
    Gethsus16-Aug-02 5:31
    memberGethsus16-Aug-02 5:31 
    GeneralIt's so confusing to understand this code...@,@ Pin
    steadyrunner12-Aug-02 2:29
    susssteadyrunner12-Aug-02 2:29 
    GeneralBUG / Loss of memory Pin
    Patrice Petit22-Jul-02 6:37
    memberPatrice Petit22-Jul-02 6:37 
    GeneralRe: BUG / Loss of memory Pin
    pixelgrease8-Feb-03 8:21
    memberpixelgrease8-Feb-03 8:21 
    GeneralDialog skin Pin
    chuchu19-Jul-02 15:17
    susschuchu19-Jul-02 15:17 
    Generaltiny improvements Pin
    Sibilant17-Jul-02 14:54
    sussSibilant17-Jul-02 14:54 
    GeneralRe: tiny improvements Pin
    Hae Moon, Kwon28-Jan-03 19:36
    memberHae Moon, Kwon28-Jan-03 19:36 
    QuestionHow to insert bitmap in the dialogue application Pin
    Farhan Ashraf29-Jun-02 0:42
    memberFarhan Ashraf29-Jun-02 0:42 
    QuestionMain window not in required shape ?? Pin
    dksiwal8-May-02 2:09
    memberdksiwal8-May-02 2:09 
    AnswerRe: Main window not in required shape ?? Pin
    Gethsus19-Aug-02 3:37
    memberGethsus19-Aug-02 3:37 
    AnswerRe: Main window not in required shape ?? Pin
    Paradoxx5-Jun-05 1:38
    memberParadoxx5-Jun-05 1:38 

    General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

    Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

    | Advertise | Privacy | Terms of Use | Mobile
    Web02 | 2.8.160721.1 | Last Updated 28 Jul 2000
    Article Copyright 2000 by Cüneyt ELÝBOL
    Everything else Copyright © CodeProject, 1999-2016
    Layout: fixed | fluid